ReactOS.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
List overview
Download
Ros-diffs
January 2006
----- 2025 -----
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
ros-diffs@reactos.org
23 participants
586 discussions
Start a n
N
ew thread
[gedmurphy] 20773: - popup menu on right click
by gedmurphy@svn.reactos.org
- popup menu on right click - fix some bugs when reading from reg - query the active list to get num items Modified: trunk/reactos/subsys/system/servman/En.rc Modified: trunk/reactos/subsys/system/servman/geterror.c Modified: trunk/reactos/subsys/system/servman/query.c Modified: trunk/reactos/subsys/system/servman/resource.h Modified: trunk/reactos/subsys/system/servman/servman.c Modified: trunk/reactos/subsys/system/servman/servman.h _____ Modified: trunk/reactos/subsys/system/servman/En.rc --- trunk/reactos/subsys/system/servman/En.rc 2006-01-10 22:36:52 UTC (rev 20772) +++ trunk/reactos/subsys/system/servman/En.rc 2006-01-10 22:39:49 UTC (rev 20773) @@ -23,10 +23,40 @@ END POPUP "Help" BEGIN - MENUITEM "About",ID_HELP_ABOUT + MENUITEM "About",ID_ABOUT END END + +IDR_POPUP MENU +BEGIN + POPUP "popup" + BEGIN + MENUITEM "Start",ID_START + MENUITEM "Stop",ID_STOP + MENUITEM "Pause",ID_PAUSE + MENUITEM "Resume",ID_RESUME + MENUITEM "Restart",ID_RESTART + MENUITEM SEPARATOR + POPUP "All tasks" + BEGIN + MENUITEM "Start",ID_START + MENUITEM "Stop",ID_STOP + MENUITEM "Pause",ID_PAUSE + MENUITEM "Resume",ID_RESUME + MENUITEM "Restart",ID_RESTART + MENUITEM "Refresh",ID_REFRESH + END + MENUITEM SEPARATOR + MENUITEM "Refresh",ID_REFRESH + MENUITEM SEPARATOR + MENUITEM "Properties",ID_PROP, "Default" + MENUITEM SEPARATOR + MENUITEM "About",ID_HELP + END +END + + IDD_ABOUTBOX DIALOG DISCARDABLE 22,16,190,182 STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU CAPTION "About Service Manager" @@ -34,7 +64,7 @@ BEGIN CONTROL "Service Manager v0.1\nCopyright (C) 2006\nby Ged Murphy (gedmurphy(a)gmail.com)", IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,48,7,130,26 - DEFPUSHBUTTON "Close",IDOK,140,162,44,15,WS_GROUP + DEFPUSHBUTTON "Close",IDOK,75,162,44,15,WS_GROUP ICON IDI_SM_ICON,IDC_STATIC,12,7,30,20 EDITTEXT IDC_LICENSE_EDIT,8,44,174,107,ES_MULTILINE | ES_READONLY | WS_VSCROLL @@ -80,19 +110,16 @@ STRINGTABLE DISCARDABLE BEGIN - IDS_SERVICES_STATUS_RUNNING "Started" - IDS_SERVICES_STATUS_STOPPED "Stopped" - IDS_SERVICES_YES "Yes" - IDS_SERVICES_UNKNOWN "Unknown" - IDS_SERVICES_AUTO "Automatic" - IDS_SERVICES_MAN "Manual" - IDS_SERVICES_DIS "Disabled" + IDS_SERVICES_STARTED "Started" + IDS_SERVICES_AUTO "Automatic" + IDS_SERVICES_MAN "Manual" + IDS_SERVICES_DIS "Disabled" END STRINGTABLE DISCARDABLE BEGIN - IDS_SERVICES_NUM_SERVICES "Num Services: %d" - + IDS_NUM_SERVICES "Num Services: %d" + IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA." /*"This program is free software; you can redistribute it " "and/or modify it under the terms of the GNU Lesser General " @@ -106,7 +133,7 @@ "General Public License along with this program; if not, write " "to the Free Software Foundation, Inc., 59 Temple Place - Suite " "330, Boston, MA 02111-1307, USA." */ - + END STRINGTABLE DISCARDABLE _____ Modified: trunk/reactos/subsys/system/servman/geterror.c --- trunk/reactos/subsys/system/servman/geterror.c 2006-01-10 22:36:52 UTC (rev 20772) +++ trunk/reactos/subsys/system/servman/geterror.c 2006-01-10 22:39:49 UTC (rev 20773) @@ -2,15 +2,18 @@ #include "servman.h" /* temp file for debugging */ -VOID GetError(VOID) +VOID GetError(DWORD err) { LPVOID lpMsgBuf; + if (err == 0) + err = GetLastError(); + FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, - GetLastError(), + err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), /* Default language */ (LPTSTR) &lpMsgBuf, 0, _____ Modified: trunk/reactos/subsys/system/servman/query.c --- trunk/reactos/subsys/system/servman/query.c 2006-01-10 22:36:52 UTC (rev 20772) +++ trunk/reactos/subsys/system/servman/query.c 2006-01-10 22:39:49 UTC (rev 20773) @@ -4,7 +4,7 @@ * FILE: subsys/system/servman/query.c * PURPOSE: Query service information * COPYRIGHT: Copyright 2005 Ged Murphy <gedmurphy(a)gmail.com> - * + * */ #include "servman.h" @@ -23,7 +23,30 @@ HeapFree(GetProcessHeap(), 0, pServiceStatus); } +VOID GetData(VOID) +{ + LVITEM item; + UINT sel; + TCHAR buf[200]; + sel = ListView_GetHotItem(hListView); + + ZeroMemory(&item, sizeof(LV_ITEM)); + + item.mask = LVIF_TEXT; + item.iItem = sel; + item.iSubItem = 0; + item.pszText = buf; + item.cchTextMax = 200; + + ListView_GetItem(hListView, &item); + + + //DisplayString(sel); + DisplayString(item.pszText); +} + + BOOL RefreshServiceList(VOID) { @@ -40,9 +63,10 @@ if (NumServices) { - HICON hiconItem; /* icon for list-view items */ - HIMAGELIST hSmall; /* image list for other views */ - TCHAR buf[300]; + HICON hiconItem; /* icon for list-view items */ + HIMAGELIST hSmall; /* image list for other views */ + TCHAR buf[300]; /* buffer to hold key path */ + INT NumListedServ = 0; /* how many services were listed */ /* Create the icon image lists */ hSmall = ImageList_Create(GetSystemMetrics(SM_CXSMICON), @@ -52,14 +76,10 @@ hiconItem = LoadImage(hInstance, MAKEINTRESOURCE(IDI_SM_ICON), IMAGE_ICON, 16, 16, 0); ImageList_AddIcon(hSmall, hiconItem); + /* assign the image to the list view */ ListView_SetImageList(hListView, hSmall, LVSIL_SMALL); - /* set the number of services in the status bar */ - LoadString(hInstance, IDS_SERVICES_NUM_SERVICES, szNumServices, 32); - _sntprintf(buf, 300, szNumServices, NumServices); - SendMessage(hStatus, SB_SETTEXT, 0, (LPARAM)buf); - for (Index = 0; Index < NumServices; Index++) { HKEY hKey = NULL; @@ -73,15 +93,11 @@ _sntprintf(buf, 300, Path, pServiceStatus[Index].lpServiceName); - if( RegOpenKeyEx(HKEY_LOCAL_MACHINE, - buf, - 0, - KEY_READ, - &hKey) != ERROR_SUCCESS) - { - GetError(); - return FALSE; - } + RegOpenKeyEx(HKEY_LOCAL_MACHINE, + buf, + 0, + KEY_READ, + &hKey); /* set the display name */ @@ -92,8 +108,8 @@ item.iItem = ListView_GetItemCount(hListView); item.iItem = ListView_InsertItem(hListView, &item); - + /* set the description */ dwValueSize = 0; ret = RegQueryValueEx(hKey, @@ -102,12 +118,12 @@ NULL, NULL, &dwValueSize); - if (ret != ERROR_SUCCESS && ret != ERROR_FILE_NOT_FOUND) + if (ret != ERROR_SUCCESS && ret != ERROR_FILE_NOT_FOUND && ret != ERROR_INVALID_HANDLE) { RegCloseKey(hKey); - return FALSE; + continue; } - + if (ret != ERROR_FILE_NOT_FOUND) { Description = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, dwValueSize); @@ -125,7 +141,7 @@ { HeapFree(GetProcessHeap(), 0, Description); RegCloseKey(hKey); - return FALSE; + continue; } item.pszText = Description; @@ -134,30 +150,21 @@ HeapFree(GetProcessHeap(), 0, Description); } - else - { - item.pszText = '\0'; - item.iSubItem = 1; - SendMessage(hListView, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); - } + /* set the status */ if (pServiceStatus[Index].ServiceStatusProcess.dwCurrentState == SERVICE_RUNNING) { - LoadString(hInstance, IDS_SERVICES_STATUS_RUNNING, szStatus, 128); + LoadString(hInstance, IDS_SERVICES_STARTED, szStatus, 128); item.pszText = szStatus; item.iSubItem = 2; SendMessage(hListView, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); } - else - { - item.pszText = '\0'; - item.iSubItem = 2; - SendMessage(hListView, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); - } + + /* set the startup type */ dwValueSize = sizeof(DWORD); @@ -169,7 +176,7 @@ &dwValueSize)) { RegCloseKey(hKey); - return FALSE; + continue; } if (StartUp == 0x02) @@ -207,9 +214,9 @@ &dwValueSize)) { RegCloseKey(hKey); - return FALSE; + continue; } - + LogOnAs = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, dwValueSize); if (LogOnAs == NULL) { @@ -225,7 +232,7 @@ { HeapFree(GetProcessHeap(), 0, LogOnAs); RegCloseKey(hKey); - return FALSE; + continue; } item.pszText = LogOnAs; @@ -237,8 +244,15 @@ RegCloseKey(hKey); } - } + NumListedServ = ListView_GetItemCount(hListView); + + /* set the number of listed services in the status bar */ + LoadString(hInstance, IDS_NUM_SERVICES, szNumServices, 32); + _sntprintf(buf, 300, szNumServices, NumListedServ); + SendMessage(hStatus, SB_SETTEXT, 0, (LPARAM)buf); + } + return TRUE; } _____ Modified: trunk/reactos/subsys/system/servman/resource.h --- trunk/reactos/subsys/system/servman/resource.h 2006-01-10 22:36:52 UTC (rev 20772) +++ trunk/reactos/subsys/system/servman/resource.h 2006-01-10 22:39:49 UTC (rev 20773) @@ -22,8 +22,9 @@ #define ID_EXIT 2010 #define IDR_MAINMENU 102 +#define IDR_POPUP 103 #define ID_VIEW_CUSTOMIZE 4021 -#define ID_HELP_ABOUT 4031 +#define ID_ABOUT 4031 #define IDS_FIRSTCOLUMN 1 #define IDS_SECONDCOLUMN 2 @@ -42,14 +43,11 @@ #define IDS_TOOLTIP_HELP 6008 #define IDS_TOOLTIP_EXIT 6009 -#define IDS_SERVICES_STATUS_RUNNING 5000 -#define IDS_SERVICES_STATUS_STOPPED 5001 -#define IDS_SERVICES_YES 5002 -#define IDS_SERVICES_UNKNOWN 5003 -#define IDS_SERVICES_AUTO 5004 -#define IDS_SERVICES_MAN 5005 -#define IDS_SERVICES_DIS 5006 -#define IDS_SERVICES_NUM_SERVICES 5010 +#define IDS_SERVICES_STARTED 5000 +#define IDS_SERVICES_AUTO 5004 +#define IDS_SERVICES_MAN 5005 +#define IDS_SERVICES_DIS 5006 +#define IDS_NUM_SERVICES 5010 #define IDI_SM_ICON 50 #define IDB_BUTTONS 51 _____ Modified: trunk/reactos/subsys/system/servman/servman.c --- trunk/reactos/subsys/system/servman/servman.c 2006-01-10 22:36:52 UTC (rev 20772) +++ trunk/reactos/subsys/system/servman/servman.c 2006-01-10 22:39:49 UTC (rev 20773) @@ -4,7 +4,7 @@ * FILE: subsys/system/servman/servman.c * PURPOSE: Main window message handler * COPYRIGHT: Copyright 2005 Ged Murphy <gedmurphy(a)gmail.com> - * + * */ #include "servman.h" @@ -16,6 +16,7 @@ HWND hListView; HWND hStatus; HWND hTool; +HMENU hShortcutMenu; LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) @@ -33,7 +34,7 @@ LVCOLUMN lvc = { 0 }; /* Toolbar buttons */ - TBBUTTON tbb [NUM_BUTTONS] = + TBBUTTON tbb [NUM_BUTTONS] = { /* iBitmap, idCommand, fsState, fsStyle, bReserved[2], dwData, iString */ {TBICON_PROP, ID_PROP, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, /* properties */ {TBICON_REFRESH, ID_REFRESH, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, /* refresh */ @@ -42,9 +43,9 @@ /* Note: First item for a seperator is its width in pixels */ {25, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, /* separator */ - {TBICON_START, ID_START, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* start */ + {TBICON_START, ID_START, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* start */ {TBICON_STOP, ID_STOP, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* stop */ - {TBICON_PAUSE, ID_PAUSE, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* pause */ + {TBICON_PAUSE, ID_PAUSE, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* pause */ {TBICON_RESTART, ID_RESTART, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* restart */ {25, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, /* separator */ @@ -105,7 +106,7 @@ hListView = CreateWindow(WC_LISTVIEW, NULL, - WS_CHILD | WS_VISIBLE | LVS_REPORT | WS_BORDER | + WS_CHILD | WS_VISIBLE | LVS_REPORT | WS_BORDER | LVS_EDITLABELS | LVS_SORTASCENDING, 0, 0, 0, 0, /* sized via WM_SIZE */ hwnd, @@ -178,10 +179,17 @@ SendMessage(hStatus, SB_SETPARTS, sizeof(statwidths)/sizeof(int), (LPARAM)statwidths); +/* ======================== Create Popup Menu ============================== */ + + hShortcutMenu = LoadMenu(hInstance, MAKEINTRESOURCE (IDR_POPUP)); + hShortcutMenu = GetSubMenu(hShortcutMenu, 0); + + + + /* ================= populate the list view with all services =================== */ - if (! RefreshServiceList() ) - GetError(); + RefreshServiceList(); } break; @@ -224,16 +232,26 @@ case WM_NOTIFY: { LPNMITEMACTIVATE item; + switch (((LPNMHDR) lParam)->code) { + case NM_RCLICK: + { + //item = (LPNMITEMACTIVATE) lParam; + //lpnmh = (LPNMHDR) lParam; + POINT pt; + GetCursorPos(&pt); + TrackPopupMenuEx(hShortcutMenu, TPM_RIGHTBUTTON, pt.x, pt.y, hwnd, NULL); + } + break; + case NM_DBLCLK: - item = (LPNMITEMACTIVATE) lParam; - PropSheets(hwnd); + item = (LPNMITEMACTIVATE) lParam; + PropSheets(hwnd); + break; - break; - case TTN_GETDISPINFO: { LPTOOLTIPTEXT lpttt; @@ -274,7 +292,7 @@ case ID_RESTART: lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_RESTART); break; - + case ID_NEW: lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_NEW); break; @@ -300,6 +318,7 @@ case WM_CLOSE: /* free the service array */ FreeMemory(); + DestroyMenu(hShortcutMenu); DestroyWindow(hwnd); break; @@ -313,10 +332,10 @@ case ID_PROP: PropSheets(hwnd); break; - + case ID_REFRESH: if (! RefreshServiceList() ) - GetError(); + GetError(0); case ID_EXPORT: break; @@ -340,7 +359,7 @@ break; case ID_HELP: - MessageBox(NULL, _T("Help is not yet implemented\n"), + MessageBox(NULL, _T("Help is not yet implemented\n"), _T("Note!"), MB_OK | MB_ICONINFORMATION); break; @@ -351,7 +370,7 @@ case ID_VIEW_CUSTOMIZE: break; - case ID_HELP_ABOUT: + case ID_ABOUT: DialogBox(hInstance, MAKEINTRESOURCE(IDD_ABOUTBOX), hwnd, _____ Modified: trunk/reactos/subsys/system/servman/servman.h --- trunk/reactos/subsys/system/servman/servman.h 2006-01-10 22:36:52 UTC (rev 20772) +++ trunk/reactos/subsys/system/servman/servman.h 2006-01-10 22:39:49 UTC (rev 20773) @@ -15,10 +15,14 @@ BOOL CALLBACK AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); -VOID GetError(VOID); +BOOL Start(LPCTSTR ServiceName, LPCTSTR *ServiceArgs, INT ArgCount); + +VOID GetError(DWORD); VOID FreeMemory(VOID); VOID DisplayString(PTCHAR); +VOID GetData(VOID); + LONG APIENTRY PropSheets(HWND hwnd); DWORD GetServiceList(VOID);
18 years, 11 months
1
0
0
0
[gvg] 20772: Clean up
by gvg@svn.reactos.org
Clean up Deleted: vendor/mediawiki/1.5.3/ Added: vendor/mediawiki/1.5.5/ Deleted: vendor/mediawiki/1.5.5/RELEASE-NOTES Added: vendor/mediawiki/1.5.5/RELEASE-NOTES Deleted: vendor/mediawiki/1.5.5/docs/hooks.txt Added: vendor/mediawiki/1.5.5/docs/hooks.txt Deleted: vendor/mediawiki/1.5.5/includes/Article.php Added: vendor/mediawiki/1.5.5/includes/Article.php Deleted: vendor/mediawiki/1.5.5/includes/DefaultSettings.php Added: vendor/mediawiki/1.5.5/includes/DefaultSettings.php Deleted: vendor/mediawiki/1.5.5/includes/Linker.php Added: vendor/mediawiki/1.5.5/includes/Linker.php Deleted: vendor/mediawiki/1.5.5/includes/MimeMagic.php Added: vendor/mediawiki/1.5.5/includes/MimeMagic.php Deleted: vendor/mediawiki/1.5.5/includes/Parser.php Added: vendor/mediawiki/1.5.5/includes/Parser.php Deleted: vendor/mediawiki/1.5.5/includes/Setup.php Added: vendor/mediawiki/1.5.5/includes/Setup.php Deleted: vendor/mediawiki/1.5.5/includes/SpecialWhatlinkshere.php Added: vendor/mediawiki/1.5.5/includes/SpecialWhatlinkshere.php Deleted: vendor/mediawiki/1.5.5/includes/UserTalkUpdate.php Added: vendor/mediawiki/1.5.5/includes/UserTalkUpdate.php Added: vendor/mediawiki/1.5.5/languages/LanguageArc.php Deleted: vendor/mediawiki/1.5.5/languages/LanguageDa.php Added: vendor/mediawiki/1.5.5/languages/LanguageDa.php Added: vendor/mediawiki/1.5.5/languages/LanguageDv.php Deleted: vendor/mediawiki/1.5.5/languages/LanguageJa.php Added: vendor/mediawiki/1.5.5/languages/LanguageJa.php Added: vendor/mediawiki/1.5.5/languages/LanguageKs.php Added: vendor/mediawiki/1.5.5/languages/LanguageSd.php Added: vendor/mediawiki/1.5.5/languages/LanguageUg.php Deleted: vendor/mediawiki/1.5.5/maintenance/entities2literals.pl Added: vendor/mediawiki/1.5.5/maintenance/entities2literals.pl Deleted: vendor/mediawiki/1.5.5/maintenance/namespace2sql.php Added: vendor/mediawiki/1.5.5/maintenance/namespace2sql.php Deleted: vendor/mediawiki/1.5.5/maintenance/postgresql/pg_tables.sql Deleted: vendor/mediawiki/1.5.5/maintenance/postgresql/pg_users.sql Added: vendor/mediawiki/1.5.5/maintenance/removeUnusedAccounts.inc Added: vendor/mediawiki/1.5.5/maintenance/removeUnusedAccounts.php Deleted: vendor/mediawiki/1.5.5/profileinfo.php Added: vendor/mediawiki/1.5.5/profileinfo.php _____ Copied: vendor/mediawiki/1.5.5 (from rev 20768, vendor/mediawiki/current) _____ Deleted: vendor/mediawiki/1.5.5/RELEASE-NOTES --- vendor/mediawiki/current/RELEASE-NOTES 2006-01-10 21:36:42 UTC (rev 20768) +++ vendor/mediawiki/1.5.5/RELEASE-NOTES 2006-01-10 22:36:52 UTC (rev 20772) @@ -1,979 +0,0 @@ -= MediaWiki release notes = - -Security reminder: MediaWiki does not require PHP's register_globals -setting since version 1.2.0. If you have it on, turn it *off* if you can. - -== MediaWiki 1.5.3 == - -December 4, 2005 - -MediaWiki 1.5.3 is a security and bugfix maintenance release. - -Validation of the user language option was broken by a code change in -May 2005, opening the possibility of remote code execution as this -parameter is used in forming a class name dynamically created with -eval(). - -The validation has been corrected in this version. All prior 1.5 release -and prelease versions are affected; 1.4 and earlier and not affected. - -Additionally several bugs have been fixed; see the changelog later in -this file for a complete list. - - -== MediaWiki 1.5.2 == - -November 2, 2005 - -MediaWiki 1.5.2 is a bugfix maintenance release. - -A change in PHP 4.4.1 and PHP 5.1.0RC broke handling of extension and -<pre> sections, causing garbage data to be inserted in output and saved -edits. This version works around the change. - -Several other glitches with MySQL 5.0 and PHP 5.0.5 were also fixed; -see the change log below for a complete list. - - -== MediaWiki 1.5.1 == - -October 26, 2005 - -MediaWiki 1.5.1 is a bugfix and security maintenance release, and is a -recommended upgrade for all installations. - -This release includes further corrections to the inline CSS style sanitation -which works around a JavaScript "feature" on Microsoft Internet Explorer. -Users of Microsoft Internet Explorer for Windows may be vulnerable to -XSS injections on prior versions; users of standards-compliant browsers -are not vulnerable. - -Major fixes include: -* Image pages work again with resizing disabled -* Works in MySQL 5.0 strict mode - -There is experimental support in this release for explicitly declaring -the UTF-8 charset in the database; this has been tested with MySQL 5.0.15 -but should work on 4.1 as well. - -IMPORTANT: Changing this setting on an existing wiki may produce interesting -data corruption, depending on server configuration. Page contents should, -usually, be unaffected, but page titles and other items may be. Limitations -in MySQL's Unicode support mean that characters outside the BMP cannot be used -in page titles or various other fields when using this mode. - -Table definitions are in maintenance/mysql5/tables.sql, and the runtime -option to send 'SET NAMES utf8' is set by $wgDBmysql5 = true. - -(MySQL 3.23.x and 4.0.x do not support character set declarations; on these -versions MediaWiki simply works with UTF-8 data and MySQL is blissfully -unaware of it.) - - - -== MediaWiki 1.5.0 final == - -October 5, 2005 - -MediaWiki 1.5.0 is the new stable release branch of MediaWiki, and is -recommended for all new installations. - -Any wikis running a 1.5 beta or release candidate are strongly recommended -to upgrade to the final release, which includes a number of bug fixes and -a security fix for CSS bugs in Microsoft Internet Explorer. - -IMPORTANT: Running a 1.3 or 1.4 wiki and don't want to jump to 1.5 yet? -Be sure to upgrade to 1.3.17 or 1.4.11, also released today. Versions -prior to 1.3.16 and 1.4.10 have a serious data corruption bug which is -triggered by a spambot known to operate in the wild. - - -=== What's new in 1.5? === - -Schema: - The core table schema has changed significantly. This should make better - use of the database's cache and disk I/O, and make significantly speed up - rename and delete operations on pages with very long edit histories. - - Unfortunately this does mean upgrading a wiki of size from 1.4 will require - some downtime for the schema restructuring, but future storage backend - changes should be able to integrate into the new system more easily. - -Permalinks: - The current revision of a page now has a permanent 'oldid' number assigned - immediately, and the id numbers are now preserved across deletion/undeletion. - A permanent reference to the current revision of a page is now just a matter - of going to the 'history' tab and copying the first link in the list. - -Page move log: - Renames of pages are now recorded in Special:Log and the page history. - A handy revert link is available from the log for sysops. - -Editing diff: - Ever lost track of what you'd done so far during an edit? A 'Show diff' - button on the edit page now makes it easy to remember. - -Uploads: - It's now possible to specify the final filename of an upload distinct - from the original filename on your disk. - - An image link for a missing file will now take you straight to the upload page. - - More metadata is pre-extracted from uploaded images, which will ease pressure - on disk or NFS volumes used to store images. EXIF metadata is displayed on - the image description page if PHP is configured with the necessary module. - - If .svg files are added to the upload whitelist, you can choose to render - them to rasterized .png images for inline display using one of several - external helper programs. See DefaultSettings.php for SVG options. - -User accounts: - There are some changes to the user permissions system, with assignable - groups. Note that this does *not* allow you to make pages which are only - accessible to certain groups. - - For details see:
http://meta.wikimedia.org/wiki/Help:User_rights
- -E-mail: - User-to-user e-mail can now be restricted to require a mail-back confirmation - first to reduce potential for abuse with false addresses. - - Updates to user talk pages and watchlist entries can optionally send e-mail - notifications. - -External hooks: - A somewhat experimental interface for hooking in an external editor - application is included. - -And... - A bunch of stuff we forgot to mention. - - -=== What's gone? === - -Latin-1: - Wikis must now be encoded in Unicode UTF-8; this has been the default for - some time, but some languages could optionally be installed in Latin-1 mode. - This is no longer supported. - - You can check if your current wiki is in Latin-1 mode by using your browser's - "view source"; look for a line like this: - - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - If it says charset=utf-8, you're ready. If it says charset=iso8859-1, - you may need to convert your data. (English-language wikis avoiding - any accented characters may be able to get away without conversion.) - -MySQL 3.x: - Some optimization hacks for MySQL 3.x have been removed as part of the schema - clean-up (specifically, the inverse_timestamp fields). - - MediaWiki 1.5 may still run on 3.x, but wikis of non-trivial size should - very seriously consider upgrading to a more modern release. MySQL 3.x support - will probably be entirely dropped in the next major release. - -Special:Maintenance - These tools were, ironically enough, not really maintained. This special - page has been removed; insofar as some of its pieces were useful and haven't - already been supplanted by other special pages they should be rewritten in - an efficient and safe manner in the future. - - -=== Caveats === - -Upgrade: - Wikis in Latin-1 encoding are no longer supported; only Unicode UTF-8. - A new option $wgLegacyEncoding is provided to allow on-the-fly recoding of - old page text entries, but other metadata fields (titles, comments etc) need - to be pre-converted. The standard upgrade process does not yet fully automate - this, but you can try the alternate partial-upgrader in upgrade1_5.php. - - The upgrade from 1.4 to 1.5 schema has not been tested for all cases, so - it's possible you may experience problems in some combinations. - -Backups: - The text entries of deleted pages are no longer removed from the main - text table on deletion. If you provide public backup dumps of your databases, - you will probably want to use the new XML-format dump generator, available - as maintenance/dumpBackup.php. - - For more information on how we run our own public data dumps at Wikimedia, - see
http://meta.wikimedia.org/wiki/Data_dumps
- -PostgreSQL: - The table definitions for PostgreSQL install are out of date. PostgreSQL - support may return in later releases, pending appropriate patches. - -MySQL 4.1+: - Some users may encounter installation problems with MySQL 4.1 or higher - due to strange charset encoding / collation configurations. Try setting - to 'latin1' or 'utf8' if you encounter problems. - - - -== MediaWiki 1.5 release candidate 4 == - -August 29, 2005 - -MediaWiki 1.5rc4 is a preview release of the new 1.5 release series. -It fixes compatibility with PHP 5.1, and corrects two cross-site scripting -security bugs: - -* <math> tags were handled incorrectly when TeX rendering support is off, - as in the default configuration. -* Extension or <nowiki> sections in Wiki table syntax could bypass HTML - style attribute restrictions for cross-site scripting attacks against - Microsoft Internet Explorer - -Wikis where the optional math support has been *enabled* are not vulnerable -to the first, but are vulnerable to the second. - - - -== MediaWiki 1.5 release candidate 3 == - -August 24, 2005 - -MediaWiki 1.5rc3 is a preview release of the new 1.5 release series. -It fixes several major problems in 1.5rc2: - -* Fixed a cross-site scripting injection in the search form - (broken since 1.5beta1) - -* Fixed upgrades from 1.4 database schema - (broken since 1.5rc2) - -1.3 and 1.4 releases are not vulnerable to the XSS bug, but anyone -running an earlier 1.5 beta or release candidate should upgrade -immediately. - - -== MediaWiki 1.5 release candidate 2 == - -August 23, 2005 - -MediaWiki 1.5rc2 is a preview release of the new 1.5 release series. -Numerous bug fixes since last beta, plus a security fix; see change -log below for full details. - -A flaw in the interaction between extensions and HTML attribute -sanitization was discovered which could allow unauthorized use -of offsite resources in style sheets, and possible exploitation -of a JavaScript injection feature on Microsoft Internet Explorer. - -This version expands the returned text and properly checks it -before output. - -A 1.5rc1 release was mistakenly made from the incorrect source code -branch; 1.5rc2 is identical to the actual 1.5rc1 in revision control -except for version number. - - -== MediaWiki 1.5 beta 4 == - -July 30, 2005 - -MediaWiki 1.5 beta 4 is a preview release of the new 1.5 release series. -A number of bugs have been fixed since beta 3; see the full changelist below. - - -== MediaWiki 1.5 beta 3 == - -July 7, 2005 - -MediaWiki 1.5 beta 3 is a preview release of the new 1.5 release -series, with a security update over beta 2. - -Incorrect escaping of a parameter in the page move template could -be used to inject JavaScript code by getting a victim to visit a -maliciously constructed URL. Users of vulnerable releases are -recommended to upgrade to this release. - -Vulnerable versions: -* 1.5 preview series: n <= 1.5beta2 vulnerable, fixed in 1.5beta3 -* 1.4 stable series: 1.4beta6 <= n <= 1.4.5 vulnerable, fixed in 1.4.6 -* 1.3 legacy series: not vulnerable - -This release also includes several bug fixes and localization updates. -See the changelog at the end of this file for a detailed list. - - - -== MediaWiki 1.5 beta 2 == - -July 5, 2005 - -MediaWiki 1.5 beta 2 is a preview release of the new 1.5 release series. -While most exciting new bugs should have been ironed out at this point, -third-party wiki operators should probably not run this beta release -on a public site without closely following additional development. - -Anyone who _has_ been running beta 1 is very very strongly advised to -upgrade to beta 2, as it fixes many bugs from the previous beta including -a couple of HTML and SQL injections. - -This release should be followed by one or two release candidates and -a 1.5.0 final within the next few weeks. - -Beta upgraders, note there are some minor database changes. For upgrades -from 1.4, see the file UPGRADE for details on significant database and -configuration file changes. - -Beta 2 includes a preliminary command-line XML wiki dump importer tool, -maintenance/importDump.php, paired with maintenance/dumpBackup.php. -These use the same format as Special:Export and Special:Import, able -to package a wiki's entire page set independent of the backend database -and compression format. - - -== MediaWiki 1.5 beta 1 == - -June 26, 2005 - -MediaWiki 1.5 beta 1 is a preview release, pretty much feature complete, -of the new 1.5 release series. There are several known and likely a number -of unknown bugs; it is not recommended to use this release in a production -environment but would be recommended for testing in mind of an upcoming -deployment. - -A number of significant changes have been made since the alpha releases, -including database changes and a reworking of the user permissions settings. -See the file UPGRADE for details of upgrading and changing your prior -configuration settings for the new system. - - - -== MediaWiki 1.5 alpha 2 == - -June 3, 2005 - -MediaWiki 1.5 alpha 2 includes a lot of bug fixes, feature merges, -and a security update. - -Incorrect handling of page template inclusions made it possible to -inject JavaScript code into HTML attributes, which could lead to -cross-site scripting attacks on a publicly editable wiki. - -Vulnerable releases and fix: -* 1.5 prerelease: fixed in 1.5alpha2 -* 1.4 stable series: fixed in 1.4.5 -* 1.3 legacy series: fixed in 1.3.13 -* 1.2 series no longer supported; upgrade to 1.4.5 strongly recommended - - -== MediaWiki 1.5 alpha 1 == - -May 3, 2005 - -This is a testing preview release, being put out mainly to aid testers in -finding installation bugs and other major problems. It is strongly recommended -NOT to run a live production web site on this alpha release. - -** WARNING: USE OF THIS ALPHA RELEASE MAY INFEST YOUR HOUSE WITH ** -** TERMITES, ROT YOUR TEETH, GROW HAIR ON YOUR PALMS, AND PASTE ** -** INNUENDO INTO YOUR C.V. RIGHT BEFORE A JOB INTERVIEW! ** -** DON'T SAY WE DIDN'T WARN YOU, MAN. WE TOTALLY DID RIGHT HERE. ** - - -=== Smaller changes since 1.4 === - -Various bugfixes, small features, and a few experimental things: - -* 'live preview' reduces preview reload burden on supported browsers -* support for external editors for files and wiki pages: -
http://meta.wikimedia.org/wiki/Help:External_editors
-* Schema reworking:
http://meta.wikimedia.org/wiki/Proposed_Database_Schema_Changes/October_
2004 -* (bug 15) Allow editors to view diff of their change before actually submitting an edit -* (bug 190) Hide your own edits on the watchlist -* (bug 510): Special:Randompage now works for other namespaces than NS_MAIN. -* (bug 1015) support for the full wikisyntax in <gallery> captions. -* (bug 1105) A "Destination filename" (save as) added to Special:Upload Upload. -* (bug 1352) Images on description pages now get thumbnailed regardless of whether the thumbnail is larger than the original. -* (bug 1662) A new magicword, {{CURRENTMONTHABBREV}} returns the abbreviation of the current month -* (bug 1668) 'Date format' supported for other languages than English, see: -
http://mail.wikipedia.org/pipermail/wikitech-l/2005-March/028364.html
-* (bug 1739) A new magicword, {{REVISIONID}} give you the article or diff database - revision id, useful for proper citation. -* (bug 1998) Updated the Russian translation. -* (bug 2064) Configurable JavaScript mimetype with $wgJsMimeType -* (bug 2084) Fixed a regular expression in includes/Title.php that was accepting invalid syntax like #REDIRECT [[foo] in redirects -* It's now possible to invert the namespace selection at Special:Allpages and Special:Contributions -* No longer using
sorbs.net
to check for open proxies by default. -* What was $wgDisableUploads is now $wgEnableUploads, and should be set to true if one wishes to enable uploads. -* Supplying a reason for a block is no longer mandatory -* Language conversion support for category pages -* $wgStyleSheetDirectory is no longer an alias for $wgStyleDirectory; -* Special:Movepage can now take paramaters like Special:Movepage/Page_to_move - (used to just be able to take paramaters via a GET request like index.php?title=Special:Movepage&target=Page_to_move) -* (bug 2151) The delete summary now includes editor name, if only one has edited the article. -* (bug 2105) Fixed from argument to the PHP mail() function. A missing space could prevent sending mail with some versions of sendmail. -* (bug 2228) Updated the Slovak translation -* ...and more! - - -=== Changes since 1.5alpha1 === - -* (bug 73) Category sort key is set to file name when adding category to - file description from upload page (previously it would be set to - "Special:Upload", causing problems with category paging) -* (bug 419) The contents of the navigation toolbar are now editable through - the MediaWiki namespace on the MediaWiki:navbar page. -* (bug 498) The Views heading in MonoBook.php is now localizable -* (bug 898) The wiki can now do advanced sanity check on uploaded files - including virus checks using external programs. -* (bug 1692) Fix margin on unwatch tab -* (bug 1906) Generalize project namespace for Latin localization, update namespaces -* (bug 1975) The name for Limburgish (li) changed from "L?¿mburgs" to "Limburgs -* (bug 2019) Wrapped the output of Special:Version in <div dir='ltr'> in order - to preserve the correct flow of text on RTL wikis. -* (bug 2067) Fixed crash on empty quoted HTML attribute -* (bug 2075) Corrected namespace definitions in Tamil localization -* (bug 2079) Removed links to Special:Maintenance from movepagetext message -* (bug 2094) Multiple use of a template produced wrong results in some cases -* (bug 2095) Triple-closing-bracket thing partly fixed -* (bug 2110) "noarticletext" should not display on Image page for "sharedupload" media -* (bug 2150) Fix tab indexes on edit form -* (bug 2152) Add missing bgcolor to attribute whitelist for <td> and <th> -* (bug 2176) Section edit 'show changes' button works correctly now -* (bug 2178) Use temp dir from environment in parser tests -* (bug 2217) Negative ISO years were incorrectly converted to BC notation -* (bug 2234) allow special chars in database passwords during install -* Deprecated the {{msg:template}} syntax for referring to templates, {{msg: is - now the wikisyntax representation of wfMsgForContent() -* Fix for reading incorrectly re-gzipped HistoryBlob entries -* HistoryBlobStub: the last-used HistoryBlob is kept open to speed up - multiple-revision pulls -* Add $wgLegacySchemaConversion update-time option to reduce amount of - copying during the schema upgrade: creates HistoryBlobCurStub reference - records in text instead of copying all the cur_text fields. Requires - that the cur table be left in place until/unless such fields are migrated - into the main text store. -* Special:Export now includes page, revision, and user id numbers by - default (previously this was disabled for no particular reason) -* dumpBackup.php can dump the full database to Export XML, with current - revisions only or complete histories. -* The group table was renamed to groups because "group" is a reserved word in - SQL which caused some inconveniances. -* New fileicons for c, cpp, deb, dvi, exe, h, html, iso, java, mid, mov, o, - ogg, pdf, ps, rm, rpm, tar, tex, ttf and txt files based on the KDE - crystalsvg theme. -* Fixed a bug in Special:Newimages that made it impossible to search for '0' -* Added language variant support for Icelandic, now supports "? ìslenzka" -* The #p-nav id in MonoBook is now #p-navigation -* Putting $4 in msg:userstatstext will now give the percentage of - admnistrators out of normal users. -* links and brokenlinks tables merged to pagelinks; this will reduce pain - dealing with moves and deletes of widely-linked pages. -* Add validate table and val_ip column through the updater. -* Simple rate limiter for edits and page moves; set $wgRateLimits - (somewhat experimental; currently needs memcached) -* (bug 2262) Hide math preferences when TeX is not enabled -* (bug 2267) Don't generate thumbnail at the same size as the source image. -* Fix rebuildtextindex.inc for new schema -* Remove linkscc table code, no longer used. -* (bug 2271) Use faster text-only link replacement in image alt text - instead of rerunning expensive link lookup and HTML generation. -* Only build the HTML attribute whitelist tree once. -* Replace wfMungeToUtf8 and do_html_entity_decode with a single function - that does both numeric and named chars: Sanitizer::decodeCharReferences -* Removed some obsolete UTF-8 converter functions -* Fix function comment in debug dump of SQL statements -* (bug 2275) Update search index more or less right on page move -* (bug 2053) Move comment whitespace trimming from edit page to save; - leaves the whitespace from the section comment there on preview. -* (bug 2274) Respect stub threshold in category page list -* (bug 2173) Fatal error when removing an article with an empty title from the watchlist -* Removed -f parameter from mail() usage, likely to cause failures and bounces. -* (bug 2130) Fixed interwiki links with fragments -* (bug 684) Accept an attribute parameter array on parser hook tags -* (bug 814) Integrate AuthPlugin changes to support Ryan Lane's external - LDAP authentication plugin -* (bug 2034) Armor HTML attributes against template inclusion and links munging - -=== Changes since 1.5alpha2 === - -* (bug 2319) Fix parse hook tag matching -* (bug 2329) Fix title formatting in several special pages -* (bug 2223) Add unique index on user_name field to prevent duplicate accounts -* (bug 1976) fix shared user database with a table prefix set -* (bug 2334) Accept null for attribs in wfElement without PHP warning -* (bug 2309) Allow templates and template parameters in HTML attribute zone, - with proper validation checks. (regression from fix for 2304) -* Disallow close tags and enforce empty tags for <hr> and <br> -* Changed user_groups format quite a bit. -* (bug 2368) Avoid fatally breaking PHP 4.1.2 in a debug line -* (bug 2367) Insert correct redirect link record on page move -* (bug 2372) Fix rendering of empty-title inline interwiki links -* (bug 2384) Fix typo in regex for IP address checking -* (bug 650) Prominently link MySQL 4.1 help page in installer if a possible - version conflict is detected -* (bug 2394) Undo incompatible breakage to {{msg:}} compatiblity includes -* (bug 1322) Use a shorter cl_sortkey field to avoid breaking on MySQL 4.1 - when the default charset is set to utf8 -* (bug 2400) don't send confirmation mail on account creation if - $wgEmailAuthentication is false. -* (bug 2172) Fix problem with nowiki beeing replaced by marker strings - when a template with a gallery was used. -* Guard Special:Userrights against form submission forgery -* (bug 2408) page_is_new was inverted (whoops!) -* Added wfMsgHtml() function for escaping messages and leaving params intact -* Fix ordering of Special:Listusers; fix groups list so it shows all groups - when searching for a specific group and can't be split across pages -* (bug 1702) Display a handy upload link instead of a useless blank link - for [[media:]] links to nonexistent files. -* (bug 873) Fix usage of createaccount permission; replaces $wgWhitelistAccount -* (bug 1805) Initialise $wgContLang before $wgUser -* (bug 2277) Added Friulian language file -* (bug 2457) The "Special page" href now links to the current special page - rather than to "". -* (bug 1120) Updated the Czech translation -* A new magic word, {{SCRIPTPATH}}, returns $wgScriptPath -* A new magic word, {{SERVERNAME}}, returns $wgServerName -* A new magic word, {{NUMBEROFFILES}}, returns the number of rows in the image table -* Special:Imagelist displays titles with " " instead of "_" -* Less gratuitous munging of content sample in delete summary -* badaccess/badaccesstext to supercede sysop*, developer* messages -* Changed $wgGroupPermissions to more cut-n-paste-friendly format -* 'developer' group deprecated by default -* Special:Upload now uses 'upload' permission instead of hardcoding login check -* Add 'importupload' permission to disable direct uploads to Special:Import -* (bug 2459) Correct escaping in Special:Log prev/next links -* (bug 2462 etc) Taking out the experimental dash conversion; it broke too many - things for the current parser to handle cleanly -* (bug 2467) Added a Turkish language file -* Fixed a bug in Special:Contributions that caused the namespace selection to - be forgotten between submits -* Special:Watchlist/edit now has namespace subheadings -* (bug 1714) the "Save page" button now has right margin to seperate it from - "Show preview" and "Show changes" -* Special:Statistics now supports action=raw, useful for bots designed to - harwest e.g. article counts from multiple wikis. -* The copyright confirmation box at Special:Upload is now turned off by default - and can be turned back on by setting $wgCopyrightAffirmation to a true value. -* Restored prior text for password reminder button and e-mail, replacing - the factually inaccurate text that was there. -* (bug 2178) Fix temp dir check again -* (bug 2488) Format 'deletedtext' message as wikitext -* (bug 750) Keep line endings consistent in LocalSettings.php -* (bug 1577) Add 'printable version' tab in MonoBook for people who don't - realize you can just hit print to get a nicely formatted printable page. -* Trim whitespace from option values to weather line-ending corruption problems -* Fixed a typo in the Romanian language file (NS_MESIA => NS_MEDIA) -* (bug 2504) Updated the Finnish translation -* (bug 2506, 2512) Updated the Nynorsk translation -* (bug 996) Replace $wgWhitelistEdit with 'edit' permission; fixup UPGRADE - documentation about edit and read whitelists. -* (bug 2515) Fix incremental link table update -* Removed some wikipedia-specifica from LanguageXx.php's -* (bug 2496) Allow MediaWiki:edithelppage to point to external page -* Added a versionRequired() function to OutputPage, useful for extension - writers that want to control what version of MediaWiki their extension - can be used with. -* Serialized user objects now checked for versioning -* Fix for interwiki link regression -* Printable link shorter in monobook -* Experimental Latin-1-and-replication-friendly upgrader script -* (bug 2520) Don't show enotif options when disabled - -== Changes since 1.5beta1 == - -* (bug 2531) Changed the interwiki name for sh (Serbocroatian) to - Srpskohrvatski/ðíÐÇð?Ðüð?ð¥ÐàÐÇð?ð?ÐéÐüð?ð© (was ðíÐÇð?Ðüð?ð¥ÐàÐÇð? ð?ÐéÐüð?ð© (Srbskohrvatski)) -* Nonzero return code for command-line scripts on wfDebugDieBacktrace() -* Conversion fix for empty old table in upgrade1_5.php -* Try reading revisions from master if no result on slave -* (bug 2538) Suppress notice on user serialized checks -* Fix paging on Special:Contributions -* (bug 2541) Fix unprotect tab -* (bug 1242) category list now show on edit page -* Skip sidebar entries where link text is '-' -* Convert non-UTF-8 URL parameters even if referer is local -* (bug 2460) <img> width & height properly filled when resizing image -* (bug 2273) deletion log comment used user interface langage -* Try reading revision _text_ from master if no result on slave -* Use content-language message cache for raw view of message pages -* (bug 2530) Not displaying talk pages on Special:Watchlist/edit -* Fixed a bug that would occour if $wgCapitalLinks was set to false, a user - agent could create a username that began with a lower case letter that was - not in the ASCII character set ( now user $wgContLang->ucfirst() instead of - PHP ucfirst() ) -* Moved the user name / password validity checking from - LoginForm::addNewAccountInternal() to two new functions, - User::isValidUserName() and User::isValidPassword(), extensions can now do - these checks without rewriting code. -* Fix $wgSiteNotice when MediaWiki:Sitenotice is set to default '-' -* Fixed a bug where the watchlist count without talk pages would be off by a - factor of two. -* upgrade1_5.php uses insert ignore, allows to skip image info initialization -* Fix namespaces in category list. -* Add rebuildImages.php to update image metadata fields -* Special:Ancientpages is expensive in new schema for now -* (bug 2568) Fixed a logic error in the Special:Statistics code which caused - the displayed percentage of admins to be totally off. -* (bug 2560) Don't show blank width/height attributes for missing size -* Don't show bogus messages about watchlist notifications when disabled -* Don't show old debug messages in watchlist -* (bug 2576) Fix recording of transclusion links -* (bug 2577) Allow sysops to enter non-standard block times -* Fixed a bug where Special:Contributions wouldn't remember the 'invert' - status between next/previous buttons. -* Move MonoBook printable link from tab to sidebar -* (bug 2567) Fix HTML escaping on category titles in list -* (bug 2562) Show rollback link for current revisions on diff pages -* (bug 2583) Add --missinig option on rebuildImages.php to add db entries - for uploaded files that don't have them -* (bug 2572) Fix edit conflict handling -* (bug 2595) Show "Earlier" and "Latest" links on history go to the first/last - page in the article history pager. -* Don't show empty-page text in 'Show changes' on new page -* (bug 2591) Check for end, fix limits on Whatlinkshere -* (bug 2584) Fix output of subcategory list -* (bug 2597) Don't crash when undeleting an image description page -* (bug 2564) Don't show "editingold" warning for recent revision -* Various code cleanup and HTML escaping fixlets -* Copy IRC-over-UDP update option from REL1_4 -* (bug 2548) Keep summary on 'show changes' of section edit -* Move center on toc to title part to avoid breaking .toc style usage -* HTML sanitizer: correct multiple attributes by keeping last, not first -* (bug 2614) Fix section edit links on diff-to-current with oldid set - Also fix navigation links on current-with-oldid view. -* (bug 2620) Return to prior behavior for some more things (such as - subpage parent links) on current-diff view. -* (bug 2618) Fix regression from another fix; show initial preview for - categories only if the page does not exist. -* (bug 2625) Keep group & user settings when paging in Listusers -* (bug 2627) Fix regression: diff radio button initial selection -* Copy fix for old search URLs with Lucene search plugin from REL1_4 -* (bug 619) Don't use incompatible diff3 executable on non-Linux systems. -* (bug 2631) Fix Hebrew namespaces. -* (bug 2630) Indicate no-longer-valid cached entries in BrokenRedirects list -* (bug 2644, 2645) "cur" diff links in page history, watchlist and - recentchanges should specify current ID explicitly. -* (bug 2609) Fix text justification preferenced with MonoBook skin. -* (bug 2594) Display article tab as red for non-existent articles. -* (bug 2656) Fix regression: prevent blocked users from reverting images -* (bug 2629) Automatically capitalize usernames again instead of - rejecting lowercase with a useless error message -* (bug 2661) Fix link generation in contribs -* Add support for &preload=Page_name (load text of an existing page into -edit area) and &editintro=Page_name (load text of an existing page instead -of MediaWiki:Newpagetext) to &action=edit, if page is new. -* (bugs 2633, 2672, 2685, 2695) Fix Estonian, Portuguese, Italian, Finnish and - Spanish numeric formatting -* Fixed Swedish numeric formatting -* (bug 2658) Fix signature time, localtime to match timezone offset again -* Files from shared repositories (e.g. commons) now display with their - image description pages when viewed on local wikis. -* Restore compatibility namespace aliases for French Wikipedia -* Fix diff order on Enhanced RC 'changes' link -* (bug 2650) Fix national date type display on wikis that don't support - dynamic date conversion. -* FiveUpgrade: large table hacks, install iw_trans update before links -* (bug 2648) Rename namespaces in Afrikaanse -* Special:Booksources checks if custom list page exists before using it -* (bug 1170) Fixed linktrail for da: and ru: -* (bug 2683) Really fix apostrophe escaping for toolbox tips -* (bug 923) Fix title and subtitle for rclinked special page -* (bug 2642) watchdetails message in several languages used <a></a> instead of [ ] -* (bug 2181) basic CSB language localisation by Tomasz G. Sienicki (thanks for the patch) -* Fix correct use of escaping in edit toolbar bits -* Removed language conversion support from Icelandic -* (bug 2616) Fix proportional image scaling, giving correct height -* (bug 2640) Include width and height attributes on unscaled images -* Workaround for mysterious problem with bogus epoch If-Last-Modified reqs -* (bug 1109) Suppress compressed output on 304 responses -* (bug 2674) Include some site configuration info in export data: - namespaces definitions, case-sensitivity, site name, version. -* Use xml:space="preserve" hint on export <text> elements -* Make language variant selection work again for zh - -== Changes since 1.5beta2 == - -* Escaped & correctly in Special:Contributions -* (bug 2534) Hide edit sections with CSS to make right click to edit section work -* (bug 2708) Avoid undefined notice on cookieless login attempt -* (bug 2188) Correct template namespace for Greek localization -* Fixed number formatting for Dutch -* (bug 1355) add class noprint to commonPrint.css -* (bug 2350) Massive update for Limburgish (li) language using Wikip? ®dia -* Massive update for Arab (ar) language using Wikip?®dia -* (bug 1560) Massive update for Kurdish (ku) language using Wikip?®dia -* (bug 2709) Some messages were not read from database -* (bug 2416) Don't allow search engine robots to index or follow nonexisting articles -* Fix escaping in page move template. -* (bug 153) Discrepancy between thumbnail size and <img> height attribute - -== Changes since 1.5beta3 == - -* Fix talk page move handling -* (bug 2721) New language file for Vietnamese with the Vietnamese number notation -* (bug 2749) would appear as a literal in image galleries for Cs, Fr, Fur, Pl and Sv -* (bug 787) external links being rendered when they only have one slash -* Fixed a missing typecast in Language::dateFormat() that would cause some - interesting errors with signitures. -* (bug 2764) Number format for Nds -* (bug 1553) Stop forcing lowercase in Monobook skin for German language. -* (bug 1064) Implements Special:Unusedcategories -* (bug 2311) New language file for Macedonian -* Fix nohistory message on empty page history -* Fix fatal error in history when validation on -* Cleaned up email notification message formatting -* Finally fixed Special:Disambiguations that was broke since SCHEMA_WORK -* (bug 2761) fix capitalization of "i" in Turkish -* (bug 2789) memcached image metadata now cleared after deletion -* Add serialized version number to image metadata cache records -* (bug 2780) Fix thumbnail generation with GD for new image schema -* (bug 2791) Slovene numeric format -* (bug 655) Provide empty search form when searching for nothing -* Nynorsk numeric format fix -* (bug 2825) Fix regression in newtalk notifications for anons w/ enotif off -* (bug 2833) Fix bug in previous fix -* With $wgCapitalLinks off, accept off-by-first-letter-case in 'go' match -* Optional parameters for [[Special:Listusers]] -* (bug 2832) [[Special:Listadmins]] redirects to [[Special:Listusers/sysop]] -* (bug 785) Parser did not get out of <pre> with list elements -* Some shared upload fixes -* (bug 2768) section=new on nonexistent talk page does not add heading -* support preload= parameter for section=new -* show comment subject in preview when using section=new -* use comment form when creating a new talk page -* (bug 460) Properly handle <center> tags as a block. -* Undo inconsistent editing behavior change -* (bug 2835) Back out fix for bug 2802, caused regressions in category sort -* PHP 4.1.2 compatibility fix: define floatval() equivalent if missing -* (bug 2901) Number format for Catalan -* Special:Allpages performance hacks: index memcached caching, removed - inverse checkbox, use friendlier relative offsets in index build -* Bring back "Chick" skin for mobile devices. It needs testing. -* Fix spelling of $wgForwardSearchUrl in DefaultSettings.php -* Specify USE INDEX on Allpages chunk queries, sometimes gets lost - due to bogus optimization -* (bug 275) Section duplication fix -* Remove unused use of undefined variable in UserMailer -* Fix notice on search index update due to non-array -* (bug 2885) Fix fatal errors and notices in PHP 5.1.0beta3 -* (bug 2931) Fix additional notices on reference use in PHP 4.4.0 -* (bug 2774) Add three new $wgHooks to LogPage which enable extensions to add - their own logtypes, see extensions/Renameuser/SpecialRenameuser.php for an - example of this. -* (bug 740) Messages from extensions now appear in Special:Allmessages -* (bug 2857) fixed parsing of lists in <pre> sections -* (bug 796) Trackback support -* Fix 1.5 regression: weird, backwards diff links on new pages in enhanced RC - are now suppressed as before. -* New skin: Simple -* "uselang" and "useskin" URL parameters can now be used in the URL when - viewing a page, to change the language and skin of a page respectively. -* Skins can now be previewed in preferences -* (bug 2943) AuthPlugin::getCanonicalName() name canonicalization hook, - patch from robla -* Wrap revision insert & page update in a transaction, rollback on late - edit conflict. -* (bug 2953) 'other' didn't work in Special:Blockip when localized -* (bug 2958) Rollback and delete auto-summary should be in the project's - content language -* Removed useless protectreason message -* Spelling fix: $wgUrlProtcols -> $wgUrlProtocols -* Switch Moldovan local name to cyrillic -* Fix typo in undefined array index access prevention -* (bug 2947) Update namespaces for sr localization -* (bug 2952) Added Asturian language file with translated namespaces -* (bug 2676) Apply a protective transformation on editing input/output - for browsers that hit the Unicode blacklist. Patch by plugwash. -* (bug 2999) Fix encoding conversion of pl_title in upgrade1_5.php -* compressOld.php disabled, as it's known to be broken. - - -=== Changes since 1.5beta4 === - -* Fix Special:Allmessages under PHP 5 -* (bug 2911) Special:Watchlist allowed only one type of limit at a time -* (bug 693) Special:Allmessages is excessively wide and redundant -* (bug 3001) Updated and applied live hack for recentchanges-based watchlist -* (bug 145) Finish 'exclude redirect' implementation in search form -* Rearranged Special:Movepage form to reduce confusion between destination - title and reason input boxes -* (bug 2527) Always set destination filename when new file is selected -* (bug 3056) MySQL 3 compatibility fix: USE INDEX instead of FORCE INDEX -* PHP 4.1 compatibility fix: don't use new_link parameter to mysql_connect - if running prior to 4.2.0 as it causes the call to fail -* (bug 3117) Fix display of upload size and type with tidy on -* (bug 1487) invalid html on empty list in banlist -* (bug 3017) Hotkey conflict for delete and show changes -* made pixel unit translateable and blocklistline now eats infiniteblock - and expiringblock -* (bug 3092) Wrong numerical separator for big numbers in Serbian. -* (bug 2855) Credit for a uniq author showed its realname even with - $wgAllowRealName=false. -* New special page: SpecialMostlinked -* (bug 2393) Fix MIME type for Atom feeds ( application/rss+atom ) -* Fix display of read-only lockfile message -* Added a new hook, 'AddNewAccount', which is run after account creation -* Update all stats fields on recount.sql -* Include software-visible client IP address in Special:Version comment - as a proxy debugging aid -* (bug 3162) Fix 'undefined property page_is_new' error on watchlist -* (bug 1734) granting db permissions failed with db usernames containg '-' -* (bug 3170) wikititlesuffix was removed, use pagetitle instead -* (bug 3187) watchlist text refer to unexistent "Stop watching" action -* (bug 3190) Added some date format choices for language sr -* (bug 1334) LanguageGa.php update -* (bug 1020) Changing user interface language does not work immediately -* (bug 2753) Some namespaces were not translated in LanguageTa.php (Tamil) -* (bug 3204) Fix typo breaking special pages in fy localization -* (bug 3210) Fix Media: links with remote image URL path -* (bug 3220) Fix escaping of block URLs in Recentchanges -* (bug 3238): Updated LanguageNn.php for 1_5 branch -* (bug 3192): properly check 'limit' parameter on Special:Contributions -* (bug 3244) Fix remote image loading hack, JavaScript injection on MSIE -* Fix URL sanitization in HTML attributes, which broke in this branch -* (bug 3475) anon contrib links on Special:Newpages - - -=== Changes since 1.5rc2 === - -* Fix upgrade from 1.4 due to version number check breakage -* Fix upgrade from 1.4 with no old revisions -* (bug 2108) Sort entries when using category browser -* XSS issue : now sanitize search query input - - -=== Changes since 1.5rc3 === - -* (bug 3280) Respect 'move' group permission on page moves -* (bug 2885) More PHP 5.1 fixes: skin, search, log, undelete -* Security fix for <math> -* Security fix for tables - - -=== Changes since 1.5rc4 === - -* (bug 3292) Fix move-over-redirect test when current entries are not plaintext -* (bug 2078) Don't hide watch tab on preview -* (bug 3306) Document $wgLocalTZoffset -* Support SVG rendering with rsvg -* Cap arbitrary SVG renders to given image size or $wgSVGMaxSize pixels wide -* (bug 3127) Render large SVGs at image page size correctly -* (bug 3448) Set page_len on undelete -* (bug 2800) Don't scale up small iamges on |thumb| without explicit size -* Use the real file link instead of the default-size rasterized version for - large SVG images on image description page -* Include the file name/type/size line for non-resized images -* (bug 3412) Clean up date format handling so ~~~~-sigs work with default - format as designed. Documentation comments updated. -* (bug 1423) LanguageJa.php update -* (bug 3405) Don't use raw letters as aliases of MSGNW: and SUBST: -* (bug 3485) Fix bogus warning about filename capitalization when off -* (bug 2792) Update rebuildrecentchanges.inc for new schema -* Special:Import/importDump fixes: report XML parse errors, accept <minor/> -* (bug 3489) PHP 5.1 compat problem with captioned images -* (bug 3350) Missing label for move talk page checkbox. -* (bug 2570) Add 'watch this page' checkbox on uploads, watch uploads - by default when 'watchdefault' option is on -* (bug 3182) Clear link cache during import to prevent memory leak -* (bug 3573) Full Greek Translation -* (bug 3595) Warn and abort if importDump.php called in read-only mode. -* (bug 3598) Update message cache on message page deletion, patch by Tietew -* Blacklist additional MSIE CSS safety tricks - - -=== Changes since 1.5.0 === - -* (bug 3629) Fix date & time format for Frisian -* (bug 3641) Fix handling of unrecognized file uploads with known extensions -* (bug 3643) Fix image page display of large images with resizing disabled -* Fix meta robots tag on Special:Version again to avoid listing vulnerable - versions for convenient harvesting by automated worms -* (bug 3684) Fix typo in fatal error backtraces in Hooks.php -* Backport fix for reference usage notice in Special:Search on PHP 4.4.0 -* Backport database connect error display fix from HEAD -* (bug 2773) Print style sheet no longer overrides RTL text direction -* MonoBook skin top link id changed from "contentTop" to "top" (shared with - name attribute) -* Wrap message page insertions in a transaction to speed up installation -* Fix Special:MovePage invalid HTML attribute for reason textarea -* Avoid notice warning on edit with no User-Agent header -* (bug 3734) Swapped out obsolete recount.sql with initStats.php -* (bug 3735) Fix to run under MySQL 5's strict mode -* (bug 3786) Experimental support for MySQL 4.1/5.0 utf8 charset mode - NOTE: Enabling this may break existing wikis, and still doesn't - work for all Unicode characters due to MySQL limitations. -* Sanitizer CSS comment processing order fix - - -=== Changes since 1.5.1 === - -* Fix Special:BrokenRedirects on MySQL 5.0 -* (bug 3809) Backport fix for detecting diff3 failure -* MySQL 5.0 strict mode fix for moving unwatched pages -* (bug 3782) Throw fatal installation warning if mbstring.func_overload on. - Why do people invent these crazy options that change language semantics? -* (bug 3762) Define missing Special:Import UI messages -* (bug 3771) Handle internal functions in backtrace in wfAbruptExit() -* (bug 3649) Remove obsolete, broken moveCustomMessages script -* (bug 3667) Add missing global in page move code -* (bug 3761) Avoid deprecation warnings in Special:Import -* (bug 2885) Remove unnecessary reference parameter which broke classic skin - talk notification on PHP 5.0.5 -* (bug 3845) Update attribute.php for 1.5 schema -* Fix Parser::unstrip on PHP 4.4.1 and PHP 5.1.0RC4 - - -=== Changes since 1.5.2 === - -* (bug 3612) Remove old broken version of maintenance/compressOld.php - The working version is in maintenance/storage/compressOld.php -* (bug 2740) Accept image deletions on 'enter' submit from MSIE -* (bug 3933) specify XML namespace for Atom 0.3 feeds -* (bug 3939) Don't try to load text for interwiki redirect target -* (bug 3948) Avoid notice warning in debug statement in bad search -* Recognize Special:Search consistently so read whitelist works -* (bug 4013) typo in fr -* (bug 3996) Fix text for new entries in RC RSS/Atom feed -* (bug 2894) Enhanced Recent Changes link fixes -* (bug 3065) Update both watched namespaces when renaming pages -* Move parentheses out of <a> link in Special:Contributions -* (bug 4071) Generate passwords long enough for $wgMinimalPasswordLength -* (bug 4035) Fix prev/next revision links on edit page -* (bug 4165) Correct validation for user language selection (data taint) - - -=== Caveats === - -Some output, particularly involving user-supplied inline HTML, may not -produce 100% valid or well-formed XHTML output. Testers are welcome to -set $wgMimeType = "application/xhtml+xml"; to test for remaining problem -cases, but this is not recommended on live sites. (This must be set for -MathML to display properly in Mozilla.) - - -For notes on 1.4.x and older releases, see HISTORY. - - -=== Online documentation === - -Documentation for both end-users and site administrators is currently being -built up on Meta-Wikipedia, and is covered under the GNU Free Documentation -License: - -
http://meta.wikipedia.org/wiki/Help:Contents
- - -=== Mailing list === - -A MediaWiki-l mailing list has been set up distinct from the Wikipedia -wikitech-l list: - -
http://mail.wikipedia.org/mailman/listinfo/mediawiki-l
- -A low-traffic announcements-only list is also available: -
http://mail.wikipedia.org/mailman/listinfo/mediawiki-announce
- -It's highly recommended that you sign up for one of these lists if you're -going to run a public MediaWiki, so you can be notified of security fixes. - - -=== IRC help === - -There's usually someone online in #mediawiki on
irc.freenode.net
_____ Copied: vendor/mediawiki/1.5.5/RELEASE-NOTES (from rev 20770, vendor/mediawiki/current/RELEASE-NOTES) _____ Deleted: vendor/mediawiki/1.5.5/docs/hooks.txt --- vendor/mediawiki/current/docs/hooks.txt 2006-01-10 21:36:42 UTC (rev 20768) +++ vendor/mediawiki/1.5.5/docs/hooks.txt 2006-01-10 22:36:52 UTC (rev 20772) @@ -1,361 +0,0 @@ -hooks.txt - -This document describes how event hooks work in MediaWiki; how to add -hooks for an event; and how to run hooks for an event. - -==Glossary== - -event - Something that happens with the wiki. For example: a user logs [truncated at 1000 lines; 14603 more skipped]
18 years, 11 months
1
0
0
0
[gvg] 20771: MediaWiki 1.5.5 merge
by gvg@svn.reactos.org
MediaWiki 1.5.5 merge Modified:
trunk/web/reactos.org/htdocs/wiki/RELEASE-NOTES
Modified:
trunk/web/reactos.org/htdocs/wiki/docs/hooks.txt
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Article.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/DefaultSettings.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Linker.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/MimeMagic.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Parser.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Setup.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/SpecialWhatlinkshere.php
Modified:
trunk/web/reactos.org/htdocs/wiki/includes/UserTalkUpdate.php
Added:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageArc.php
Modified:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageDa.php
Added:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageDv.php
Modified:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageJa.php
Added:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageKs.php
Added:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageSd.php
Added:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageUg.php
Modified:
trunk/web/reactos.org/htdocs/wiki/maintenance/entities2literals.pl
Modified:
trunk/web/reactos.org/htdocs/wiki/maintenance/namespace2sql.php
Deleted:
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_tables.sql
Deleted:
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_users.sql
Added:
trunk/web/reactos.org/htdocs/wiki/maintenance/removeUnusedAccounts.inc
Added:
trunk/web/reactos.org/htdocs/wiki/maintenance/removeUnusedAccounts.php
Modified:
trunk/web/reactos.org/htdocs/wiki/profileinfo.php
_____ Modified:
trunk/web/reactos.org/htdocs/wiki/RELEASE-NOTES
---
trunk/web/reactos.org/htdocs/wiki/RELEASE-NOTES
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/RELEASE-NOTES
2006-01-10 22:33:07 UTC (rev 20771) @@ -3,6 +3,50 @@ Security reminder: MediaWiki does not require PHP's register_globals setting since version 1.2.0. If you have it on, turn it *off* if you can. +== MediaWiki 1.5.5 == + +January 5, 2006 + +MediaWiki 1.5.5 is a security and bugfix maintenance release. + +Detection for uploads of Windows Metafile (.wmf) images has been added +to help protect against a client-side vulnerability in unpatched Microsoft +Windows operating systems. + +Sites which have enabled uploads and added non-standard file types +(such as .ogg, .doc, or .pdf) should upgrade to this release to ensure +that malicious .wmf files can't be uploaded with a fake extension; +such files could put visitors to the site at risk. + +For more details on this, see: +http://en.wikipedia.org/wiki/Windows_Metafile_vulnerability + +Additionally, a maintenance script removeUnusedAccounts.php has been added; +this replaces an older Perl script which had not been updated for the new +schema in 1.5. + + +== MediaWiki 1.5.4 == + +December 21, 2005 + +MediaWiki 1.5.4 is a security and bugfix maintenance release. + +A hardcoded internal placeholder string has been replaced with a random +one. This closes a hole where security checks in inline style attributes +could be bypassed, injecting JavaScript code that could execute in +Microsoft Internet Explorer. + +Other browsers would not be vulnerable. + +Several minor fixes are included in this release, most notably a fix +to clear the "you have new messages" flag properly for usernames +containing spaces when e-mail notification is enabled. + +See the changelog at the end of the release notes for a full list of +fixes. + + == MediaWiki 1.5.3 == December 4, 2005 @@ -937,8 +981,31 @@ * (bug 4071) Generate passwords long enough for $wgMinimalPasswordLength * (bug 4035) Fix prev/next revision links on edit page * (bug 4165) Correct validation for user language selection (data taint) +* Clearer message in DefaultSettings.php: edit LocalSettings.php instead +=== Changes since 1.5.3 === + +* (bug 3805) Clear 'new messages' flag properly in enotif mode + for usernames containing spaces +* (bug 2714) Backlink from special:whatlinkshere was hard set as 'existing' +* (bug 4249) Typo in entities2literals.pl +* (bug 4233) Update for japanese language +* (bug 4279) Small correction to LanguageDa.php +* (bug 4267) Switch dv sd ug ks arc languages to RTL +* (bug 3991) Allow the operation of wikicode on Protect move only text +* Added AutoAuthenticate hook for external User object suppliers +* Parser internal placeholder string now fully randomized for safety + +=== Changes since 1.5.4 === + +* Maintenance script to delete unused user accounts +* Added detection for WMF files (application/x-msmetafile), added this + MIME type to the default blacklist. Prevented inline display of images + which are not of known image types. This is in response to +
http://en.wikipedia.org/wiki/Windows_Metafile_vulnerability
+ + === Caveats === Some output, particularly involving user-supplied inline HTML, may not _____ Modified:
trunk/web/reactos.org/htdocs/wiki/docs/hooks.txt
---
trunk/web/reactos.org/htdocs/wiki/docs/hooks.txt
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/docs/hooks.txt
2006-01-10 22:33:07 UTC (rev 20771) @@ -282,6 +282,9 @@ $iswatch: watch flag $section: section # +'AutoAuthenticate': called to authenticate users on external/environmental means +$user: writes user object to this parameter + 'BlockIp': before an IP address or user is blocked $block: the Block object about to be saved $user: the user _doing_ the block (not the one being blocked) _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Article.php
---
trunk/web/reactos.org/htdocs/wiki/includes/Article.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/Article.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -1605,7 +1605,7 @@ $wgOut->setPageTitle( wfMsg( 'confirmprotect' ) ); $wgOut->setSubtitle( wfMsg( 'protectsub', $sub ) ); $wgOut->addWikiText( wfMsg( 'confirmprotecttext' ) ); - $moveonly = htmlspecialchars( wfMsg( 'protectmoveonly' ) ); + $moveonly = wfMsg( 'protectmoveonly' ) ; // add it using addWikiText to prevent xss. bug:3991 $protcom = htmlspecialchars( wfMsg( 'protectcomment' ) ); $formaction = $this->mTitle->escapeLocalURL( 'action=protect' . $par ); } @@ -1631,7 +1631,10 @@ <input type='checkbox' name='wpMoveOnly' value='1' id='wpMoveOnly' /> </td> <td align='left'> - <label for='wpMoveOnly'>{$moveonly}</label> + <label for='wpMoveOnly'> "); + $wgOut->addWikiText( $moveonly ); // bug 3991 + $wgOut->addHTML( " + </label> </td> </tr> " ); } _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/DefaultSettings.php
---
trunk/web/reactos.org/htdocs/wiki/includes/DefaultSettings.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/DefaultSettings.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -1,9 +1,12 @@ <?php /** - * DO NOT EDIT THIS FILE! * - * To customize your installation, edit "LocalSettings.php". + * DO NOT EVER EDIT THIS FILE! * + * + * To customize your installation, edit "LocalSettings.php". If you make + * changes here, they will be lost on next upgrade of MediaWiki! + * * Note that since all these string interpolations are expanded * before LocalSettings is included, if you localize something * like $wgScriptPath, you must also localize everything that @@ -28,7 +31,7 @@ $wgConf = new SiteConfiguration; /** MediaWiki version number */ -$wgVersion = '1.5.3'; +$wgVersion = '1.5.5'; /** Name of the site. It must be changed in LocalSettings.php */ $wgSitename = 'MediaWiki'; @@ -1035,7 +1038,9 @@ # PHP scripts may execute arbitrary code on the server 'application/x-php', 'text/x-php', # Other types that may be interpreted by some servers - 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh' + 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh', + # Windows metafile, client-side vulnerability on some systems + 'application/x-msmetafile' ); /** This is a flag to determine whether or not to check file extensions on upload. */ _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Linker.php
---
trunk/web/reactos.org/htdocs/wiki/includes/Linker.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/Linker.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -373,6 +373,10 @@ global $wgContLang, $wgUser, $wgThumbLimits; $img = new Image( $nt ); + if ( !$img->allowInlineDisplay() ) { + return $this->makeKnownLinkObj( $nt ); + } + $url = $img->getViewURL(); $prefix = $postfix = ''; @@ -591,7 +595,7 @@ * @access public * @todo Handle invalid or missing images better. */ - function makeMediaLinkObj( $title, $text = '', $nourl=false ) { + function makeMediaLinkObj( $title, $text = '' ) { if( is_null( $title ) ) { ### HOTFIX. Instead of breaking, return empty string. return $text; @@ -600,9 +604,6 @@ $img = new Image( $title ); if( $img->exists() ) { $url = $img->getURL(); - if( $nourl ) { - $url = str_replace( "http://", UNIQ_PREFIX . "NOPARSEhttp://", $url ); - } $class = 'internal'; } else { $upload = Title::makeTitle( NS_SPECIAL, 'Upload' ); _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/MimeMagic.php
---
trunk/web/reactos.org/htdocs/wiki/includes/MimeMagic.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/MimeMagic.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -339,14 +339,21 @@ $fname = 'MimeMagic::guessMimeType'; $mime= $this->detectMimeType($file,$useExt); - if (strpos($mime,"text/")===0 || - $mime==="application/xml") { + // Read a chunk of the file + $f = fopen( $file, "rt" ); + if( !$f ) return "unknown/unknown"; + $head = fread( $f, 1024 ); + fclose( $f ); - // Read a chunk of the file - $f = fopen( $file, "rt" ); - if( !$f ) return "unknown/unknown"; - $head = fread( $f, 1024 ); - fclose( $f ); + $sub4 = substr( $head, 0, 4 ); + if ( $sub4 == "\x01\x00\x09\x00" || $sub4 == "\xd7\xcd\xc6\x9a" ) { + // WMF kill kill kill + // Note that WMF may have a bare header, no magic number. + // The former of the above two checks is theoretically prone to false positives + $mime = "application/x-msmetafile"; + } + + if (strpos($mime,"text/")===0 || $mime==="application/xml") { $xml_type= NULL; $script_type= NULL; _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Parser.php
---
trunk/web/reactos.org/htdocs/wiki/includes/Parser.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/Parser.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -43,9 +43,6 @@ # may want to use in wikisyntax define( 'STRIP_COMMENTS', 'HTMLCommentStrip' ); -# prefix for escaping, used in two functions at least -define( 'UNIQ_PREFIX', 'NaodW29'); - # Constants needed for external link processing define( 'HTTP_PROTOCOLS', 'http:\/\/|https:\/\/' ); # Everything except bracket, space, or control characters @@ -101,7 +98,7 @@ # Cleared with clearState(): var $mOutput, $mAutonumber, $mDTopen, $mStripState = array(); var $mVariables, $mIncludeCount, $mArgStack, $mLastSection, $mInPre; - var $mInterwikiLinkHolders, $mLinkHolders; + var $mInterwikiLinkHolders, $mLinkHolders, $mUniqPrefix; # Temporary: var $mOptions, $mTitle, $mOutputType, @@ -153,6 +150,7 @@ 'texts' => array(), 'titles' => array() ); + $this->mUniqPrefix = 'UNIQ' . Parser::getRandomString(); } /** @@ -349,7 +347,7 @@ $gallery_content = array(); # Replace any instances of the placeholders - $uniq_prefix = UNIQ_PREFIX; + $uniq_prefix = $this->mUniqPrefix; #$text = str_replace( $uniq_prefix, wfHtmlEscapeFirst( $uniq_prefix ), $text ); # html @@ -508,7 +506,7 @@ * @access private */ function insertStripItem( $text, &$state ) { - $rnd = UNIQ_PREFIX . '-item' . Parser::getRandomString(); + $rnd = $this->mUniqPrefix . '-item' . Parser::getRandomString(); if ( !$state ) { $state = array( 'html' => array(), @@ -777,7 +775,7 @@ # replaceInternalLinks may sometimes leave behind # absolute URLs, which have to be masked to hide them from replaceExternalLinks - $text = str_replace(UNIQ_PREFIX."NOPARSE", "", $text); + $text = str_replace($this->mUniqPrefix."NOPARSE", "", $text); $text = $this->doMagicLinks( $text ); $text = $this->doTableStuff( $text ); @@ -1393,7 +1391,7 @@ $text = $this->replaceInternalLinks($text); # cloak any absolute URLs inside the image markup, so replaceExternalLinks() won't touch them - $s .= $prefix . preg_replace("/\b($wgUrlProtocols)/", UNIQ_PREFIX."NOPARSE$1", $this->makeImage( $nt, $text) ) . $trail; + $s .= $prefix . preg_replace( "/\b($wgUrlProtocols)/", "{$this->mUniqPrefix}NOPARSE$1", $this->makeImage( $nt, $text) ) . $trail; $wgLinkCache->addImageLinkObj( $nt ); wfProfileOut( "$fname-image" ); @@ -1445,7 +1443,9 @@ # Special and Media are pseudo-namespaces; no pages actually exist in them if( $ns == NS_MEDIA ) { - $s .= $prefix . $sk->makeMediaLinkObj( $nt, $text, true ) . $trail; + $link = $sk->makeMediaLinkObj( $nt, $text ); + # Cloak with NOPARSE to avoid replacement in replaceExternalLinks + $s .= $prefix . str_replace( 'http://', "http{$this->mUniqPrefix}NOPARSE://", $link ) . $trail; $wgLinkCache->addImageLinkObj( $nt ); continue; } elseif( $ns == NS_SPECIAL ) { @@ -1751,12 +1751,11 @@ if( 0 == $prefixLength ) { wfProfileIn( "$fname-paragraph" ); # No prefix (not in list)--go to paragraph mode - $uniq_prefix = UNIQ_PREFIX; // XXX: use a stack for nestable elements like span, table and div $openmatch = preg_match('/(<table|<blockquote|<h1|<h2|<h3|<h4|<h5|<h6|<pre|<tr|<p|<ul |<li|<\\/tr|<\\/td|<\\/th)/iS', $t ); $closematch = preg_match( '/(<\\/table|<\\/blockquote|<\\/h1|<\\/h2|<\\/h3|<\\/h4|<\\/h5|<\\/h6|'. - '<td|<th|<div|<\\/div|<hr|<\\/pre|<\\/p|'.$uniq_prefix.'-pre|<\\/li|<\\/ ul)/iS', $t ); + '<td|<th|<div|<\\/div|<hr|<\\/pre|<\\/p|'.$this->mUniqPrefix.'-pre|<\\/l i|<\\/ul)/iS', $t ); if ( $openmatch or $closematch ) { $paragraphStack = false; $output .= $this->closeParagraph(); _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/Setup.php
---
trunk/web/reactos.org/htdocs/wiki/includes/Setup.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/Setup.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -206,7 +206,11 @@ # Prevent loading User settings from the DB. $wgUser->setLoaded( true ); } else { - $wgUser = User::loadFromSession(); + $wgUser = null; + wfRunHooks('AutoAuthenticate',array(&$wgUser)); + if ($wgUser === null) { + $wgUser = User::loadFromSession(); + } } wfProfileOut( $fname.'-User' ); _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/SpecialWhatlinkshere.php
---
trunk/web/reactos.org/htdocs/wiki/includes/SpecialWhatlinkshere.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/SpecialWhatlinkshere.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -32,7 +32,7 @@ $sk = $wgUser->getSkin(); $isredir = ' (' . wfMsg( 'isredirect' ) . ")\n"; - $wgOut->addHTML('< '.$sk->makeKnownLinkObj($nt, '', 'redirect=no' )."<br />\n"); + $wgOut->addHTML('< '.$sk->makeLinkObj($nt, '', 'redirect=no' )."<br />\n"); wfShowIndirectLinks( 0, $nt, $limit, $offset ); } _____ Modified:
trunk/web/reactos.org/htdocs/wiki/includes/UserTalkUpdate.php
---
trunk/web/reactos.org/htdocs/wiki/includes/UserTalkUpdate.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/includes/UserTalkUpdate.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -50,7 +50,7 @@ $this->mAction = $action; $this->mNamespace = $ns; - $this->mTitle = $title; # str_replace( '_', ' ', $title ); # I do not know, why this was needed . T. Gries 23.11.2004 + $this->mTitle = $title; $this->mSummary = $summary; $this->mMinorEdit = $minoredit; $this->mTimestamp = $timestamp; @@ -62,7 +62,7 @@ # If the user talk page is our own, clear the flag # when we are reading it or writing it. - if ( 0 == strcmp( $this->mTitle, $wgUser->getName() ) ) { + if ( 0 == strcmp( str_replace( '_', ' ', $this->mTitle ), $wgUser->getName() ) ) { $wgUser->setNewtalk( 0 ); $wgUser->saveSettings(); } else { _____ Copied:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageArc.php
(from rev 20770, vendor/mediawiki/current/languages/LanguageArc.php) _____ Modified:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageDa.php
---
trunk/web/reactos.org/htdocs/wiki/languages/LanguageDa.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/languages/LanguageDa.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -570,7 +570,7 @@ Pr?©v en anden foresp?©rgsel.", "matchtotals" => "Foresp?©rgslen \"$1\" opfyldte $2 artikeltitler og teksten i $3 artikler.", -"nogomatch" => "<span style=\"font-size: 135%; font-weight: bold; margin-left: .6em\">{{SITENAME}} har ingen artikel med dette navn</span> <span style=\"display: block; margin: 1.5em 2em\"> Du kan <strong><a href=\"$1\" class=\"new\">oprette en artikel med dette navn</a></strong> eller <a href=\"/wiki/{{ns:4}}:Efterspurgte_artikler\">eftersp?©rge den</a>. <span style=\"display:block; font-size: 89%; margin-left:.2em\">For at undg?Ñ flere artikler om samme emne, bedes du inden oprettelsen s?©ge efter artiklen under alternative navne og stavem?Ñder.</span> </span>", +"nogomatch" => "{{SITENAME}} har ingen artikel med dette navn. Du kan [[$1|oprette en artikel med dette navn]] eller [[{{ns:4}}:Efterspurgte_artikler|eftersp?©rge den]]. For at undg?Ñ flere artikler om samme emne, bedes du inden oprettelsen s?©ge efter artiklen under alternative navne og stavem?Ñder.", "titlematches" => "Artikeltitler der opfyldte foresp?©rgslen", "notitlematches" => "Ingen artikeltitler opfyldte foresp?©rgslen", "textmatches" => "Artikeltekster der opfyldte foresp?©rgslen", _____ Copied:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageDv.php
(from rev 20770, vendor/mediawiki/current/languages/LanguageDv.php) _____ Modified:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageJa.php
---
trunk/web/reactos.org/htdocs/wiki/languages/LanguageJa.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/languages/LanguageJa.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -67,7 +67,7 @@ # User preference toggles 'tog-underline' => 'Òâ¬Òâ?Òé»Òü«õ©ïþÀÜ:', -'tog-highlightbroken' => 'µ£¬õ¢£µêÉÒü«ÒâÜÒâ?Òé©Òü©Òü«Òâ¬Òâ?Òé»ÒéÆ<a href="javascript:void(0);" class="new" onclick="return false;">ÒâÅÒéñÒâ®ÒéñÒâê</a>ÒüÖÒéï (ÒâüÒéºÒââÒé»ÒüùÒü¬ÒüäÒü¿ÒüôÒü«ÒéêÒüåÒü½<a href="javascript:void(0);" class="internal" onclick="return false;">?</a>Òü¬Òéï)', +'tog-highlightbroken' => 'µ£¬õ¢£µêÉÒü«ÒâÜÒâ?Òé©Òü©Òü«Òâ¬Òâ? Òé»ÒéÆÒâÅÒéñÒâ®ÒéñÒâêÒüÖÒéï', 'tog-justify' => 'µ«ÁÞÉ¢ÒéÆÕØçþ¡ëÕë?Òéèõ?ÿÒüæÒüÖÒéï', 'tog-hideminor' => 'µ£ÇÞ?æµø?µû?ÒüùÒüfÒâÜÒâ?Òé©ÒüïÒéëþ??Úâ¿Òü«þÀ¿ ÚøåÒéÆÚÜáÒüÖ', 'tog-usenewrc' => 'µ£ÇÞ?æµø?µû?ÒüùÒüfÒâÜÒâ?Òé©ÒéƵïíÕ?ÁÒüÖÒéï´?êÕ»¥Õ? £ÒüùÒüªÒüäÒü¬ÒüäÒâûÒâ®ÒéªÒéÂÒééÒüéÒéèÒü¥ÒüÖ´?ë', @@ -177,7 +177,7 @@ 'navigation' => 'ÒâèÒâôÒé?Òâ?ÒéÀÒâºÒâ?', # Metadata in edit box -'metadata' => 'Metadata', +'metadata' => 'ÒâíÒé?ÒâçÒâ?Òé?', 'metadata_page' => '{{ns:Project}}:Metadata', 'currentevents' => 'µ£ÇÞ?æÒü«Õç?µØÑõ?ï', @@ -347,7 +347,7 @@ # Login and logout pages # 'logouttitle' => 'ÒâªÒâ?ÒéÂÒâ? Òâ¡Òé?ÒéóÒéªÒâê', -'logouttext' => '<p>Òâ¡ Òé?ÒéóÒéªÒâêÒüùÒü¥ÒüùÒüfÒÇéÒüôÒü«Òü¥Òü¥{{SITENAME}}ÒéÆÕî?ÕÉìÒüºõ¢? ÒüäþÂÜÒüæÒéïÒüôÒü¿ÒüîÒüºÒüìÒü¥ÒüÖÒÇéÒééÒüåõ©ÇÕ?ªÒâ¡Òé?ÒéñÒâ? ÒüùÒüªÕàâÒü«ÒÇüÒüéÒéïÒüäÒü»ÕêÑÒü«ÒâªÒâ?ÒéÂÒâ?Òü¿ÒüùÒüªõ¢?ÒüåÒüôÒü¿ ÒééÒüºÒüìÒü¥ÒüÖÒÇé</p> +'logouttext' => '<p><strong>Òâ¡ Òé?ÒéóÒéªÒâêÒüùÒü¥ÒüùÒüfÒÇé</strong>ÒüôÒü«Òü¥Òü¥{{SITENAME}}ÒéÆÕî? ÕÉìÒüºõ¢?ÒüäþÂÜÒüæÒéïÒüôÒü¿ÒüîÒüºÒüìÒü¥ÒüÖÒÇéÒééÒüåõ©ÇÕ?ªÒâ¡Òé?ÒéñÒâ? ÒüùÒüªÕàâÒü«ÒÇüÒüéÒéïÒüäÒü»ÕêÑÒü«ÒâªÒâ?ÒéÂÒâ?Òü¿ÒüùÒüªõ¢?ÒüåÒüôÒü¿ ÒééÒüºÒüìÒü¥ÒüÖÒÇé</p> <p>ÔÇ?ÒüäÒüÅÒüñÒüïÒü«ÒâÜÒâ?Òé©Òü»ÒâûÒâ®ÒéªÒéÂÒü«Òé¡ ÒâúÒââÒéÀÒâÑÒéÆÒé»Òâ¬ÒéóÒüÖÒéïÒü¥ÒüºÒâ¡Òé?ÒéñÒâ? ÒüùÒüªÒüäÒéïÒüïÒü«ÒéêÒüåÒü½Þí¿þñ?ÒüòÒéîÒéïÒüôÒü¿ÒüîÒüéÒéèÒü¥ÒüÖÒÇé</p>', 'welcomecreation' => '== $1 ÒüòÒéôÒÇüÒéêÒüåÒüôÒüØ! == @@ -363,7 +363,7 @@ 'yourdomainname' => 'ÒüéÒü¬ÒüfÒü«ÒâëÒâíÒéñÒâ?', 'externaldberror' => 'ÕñûÚâ¿Òü«Þ¬ìÞ¿?ÒâçÒâ?Òé?ÒâÖÒâ?Òé?ÒüºÒé¿Òâ®Òâ? ÒüîþÖ?þöfÒüfÒüïÒÇüÒü¥ÒüfÒü»ÕñûÚâ¿ÒéóÒé½ÒéªÒâ?ÒâêµâàÕá?Òü«µø?µû?ÒüîÞ¿? ÕÅ»ÒüòÒéîÒüªÒüäÒü¥ÒüøÒéôÒÇé', 'loginproblem' => '<b>Òâ¡Òé?ÒéñÒâ?ÒüºÒé¿Òâ®Òâ?ÒüîþÖ? þöfÒüùÒü¥ÒüùÒüfÒÇé</b><br />ÕåìÕ?ªÕ«fÞíîÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé', -'alreadyloggedin' => '<b style="color:red">ÒâªÒâ?ÒéÂÒâ? $1 Òü»ÒÇüÒüÖÒüºÒü½Òâ¡Òé?ÒéñÒâ?µ©êÒü?ÒüºÒüÖÒÇé</b><br />', +'alreadyloggedin' => '<strong>ÒâªÒâ?ÒéÂÒâ? $1 Òü»ÒÇüÒüÖÒüºÒü½Òâ¡ Òé?ÒéñÒâ?µ©êÒü?ÒüºÒüÖÒÇé</strong><br />', 'login' => 'Òâ¡Òé?ÒéñÒâ?', 'loginprompt' => '{{SITENAME}}Òü½Òâ¡Òé?ÒéñÒâ?ÒüÖÒéïÒü½Òü»Òé»ÒââÒé¡Òâ? ÒéƵ£ëÕè?Òü½ÒüÖÒéïÕ?àÞªüÒüîÒüéÒéèÒü¥ÒüÖÒÇé', @@ -482,7 +482,7 @@ 'editingsection' => '$1 ÒéÆþÀ¿Úøåõ©¡ (Òé?Òé»ÒéÀÒâºÒâ?)', 'editingcomment' => '$1 ÒéÆþÀ¿Úøåõ©¡ (µû?ÞªÅÒé?ÒâíÒâ?Òâê)', 'editconflict' => 'þÀ¿Úøåþ½ÂÕÉê: $1', -'explainconflict' => 'ÒüéÒü¬ÒüfÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆþÀ¿ ÚøåÒüùÕºïÒéüÒüfÕ¥îÒü½ÒÇüõ?ûÒü«Þ¬?ÒüïÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆÕñëµø? ÒüùÒü¥ÒüùÒüfÒÇéõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü»þÅ¥Õ£¿ Òü«µ£Çµû?Òü«þèµàïÒüºÒüÖÒÇéÒüéÒü¬ÒüfÒü«þÀ¿ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒü»õ©ïÕü? Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü½þñ?ÒüòÒéîÒüªÒüäÒü¥ÒüÖÒÇéþÀ¿ ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒéÆÒÇüõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü«µûçþ½áÒü½ þÁäÒü?Þ¥?ÒéôÒüºÒüÅÒüáÒüòÒüäÒÇé<strong>õ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿ Òâ¬ÒéóÒü«ÕåàÕ«?ÒüáÒüæ</strong>ÒüîÒÇüÔÇ£µèòþ¿? ÒüÖÒéïÔÇØÒéÆÒé»Òâ¬ÒââÒé»ÒüùÒüfµÖéÒü½Õ«fÚÜøÒü½õ?ØÕ¡ÿÒüòÒéîÒü¥ÒüÖÒÇé', +'explainconflict' => 'ÒüéÒü¬ÒüfÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆþÀ¿ ÚøåÒüùÕºïÒéüÒüfÕ¥îÒü½ÒÇüõ?ûÒü«Þ¬?ÒüïÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆÕñëµø? ÒüùÒü¥ÒüùÒüfÒÇéõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü»þÅ¥Õ£¿ Òü«µ£Çµû?Òü«þèµàïÒüºÒüÖÒÇéÒüéÒü¬ÒüfÒü«þÀ¿ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒü»õ©ïÕü? Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü½þñ?ÒüòÒéîÒüªÒüäÒü¥ÒüÖÒÇéþÀ¿ ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒéÆÒÇüõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü«µûçþ½áÒü½ þÁäÒü?Þ¥?ÒéôÒüºÒüÅÒüáÒüòÒüäÒÇé<strong>õ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿ Òâ¬ÒéóÒü«ÕåàÕ«? ÒüáÒüæ</strong>ÒüîÒÇüÒÇî{{int:Savearticle}}ÒÇìÒéÆÒé»Òâ¬ÒââÒé»ÒüùÒüfµÖéÒü ½Õ«fÚÜøÒü½õ?ØÕ¡ÿÒüòÒéîÒü¥ÒüÖÒÇé', 'yourtext' => 'ÒüéÒü¬ÒüfÒü«µûçþ½á', 'storedversion' => 'õ?ØÕ¡ÿÒüòÒéîÒüfþëê', 'nonunicodebrowser' => '<strong>Þ¡ªÕæè: ÒüéÒü¬ÒüfÒü«õ¢?þö¿ ÒüùÒüªÒüäÒéïÒâûÒâ®ÒéªÒéÂÒü»Unicodeõ? ƵÅøÒüºÒü»ÒüéÒéèÒü¥ÒüøÒéôÒÇéÚáàþø«ÒéÆþÀ¿ÚøåÒüÖÒéïÕëìÒü½ÒâûÒâ®ÒéªÒéÂÒéÆÕñ ëµø?ÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé</strong>', @@ -512,7 +512,7 @@ 'loadhist' => 'Õñëµø?Õ?ѵ¡?Òü«Þ¬¡Òü?Þ¥?Òü?õ©¡', 'currentrev' => 'µ£Çµû?þëê', 'revisionasof' => '$1Òü«þëê', -'revisionasofwithlink' => '$1 Òü«þëêÒéÆÞí¿þñ?ÒüùÒüªÒüäÒü¥ÒüÖ ; $2<br />$3 | $4', +'revisionasofwithlink' => '$1 Òü«þëê; $2<br />$3 | $4', 'previousrevision' => 'ÔåÉÕëìÒü«þëê', 'nextrevision' => 'µ¼íÒü«þëêÔåÆ', 'currentrevisionlink' => 'µ£Çµû?þëêÒéÆÞí¿þñ?', @@ -1057,7 +1057,7 @@ 'undeletebtn' => 'Õ¥®Õ©?!', 'undeletedarticle' => '"$1" ÒéÆÕ¥®Õ©?ÒüùÒü¥ÒüùÒüfÒÇé', 'undeletedrevisions' => '$1 þëêÒéÆÕ¥®Õ©?', -'undeletedtext' => '[[:$1]]ÒéÆþäíõ?ïÕ¥®Õ©?ÒüùÒü¥ÒüùÒüfÒÇéµ£ÇÞ? æÒü«ÕëèÚÖñÒü¿Õ¥®Õ©?Òü«Þ¿ÿÚî? Òü»[[Special:Log/delete]]ÒéÆÕÅéþàºÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé', +'undeletedtext' => '[[:$1|$1]]ÒéÆþäíõ?ïÕ¥®Õ©?ÒüùÒü¥ÒüùÒüfÒÇéµ£ÇÞ? æÒü«ÕëèÚÖñÒü¿Õ¥®Õ©?Òü«Þ¿ÿÚî? Òü»[[Special:Log/delete]]ÒéÆÕÅéþàºÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé', # Namespace form on various pages 'namespace' => 'ÕÉìÕëìþ®?Úûô:', @@ -1249,8 +1249,8 @@ 'movetalk' => 'ÒâÄÒâ?ÒâêÒâÜÒâ?Òé©Òüîõ?ÿÚÜÅÒüÖÒéïÕá?ÕÉêÒü½ Òü»ÒÇüÒüØÒéîÒééõ©ÇþÀÆÒü½þº?ÕïòÒüÖÒéï', 'talkpagemoved' => 'õ?ÿÚÜÅÒü«ÒâÄÒâ?ÒâêÒü«ÒâÜÒâ?Òé©Òééþº? ÕïòÒüùÒü¥ÒüùÒüfÒÇé', 'talkpagenotmoved' => 'õ?ÿÚÜÅÒü«ÒâÄÒâ?ÒâêÒü«ÒâÜÒâ?Òé©Òü»<strong>þº? ÕïòÒüòÒéîÒü¥ÒüøÒéôÒüºÒüùÒüfÒÇé</strong>', -'1movedto2' => '$1 ÒéÆ $2 Òü©þº?Õïò', -'1movedto2_redir' => '$1 ÒéÆÒüôÒü«ÒâÜÒâ?Òé©ÒüéÒüªÒü«Òâ¬ÒâÇÒéñÒâ¼Òé»Òâê $2 Òü©þº?Õïò', +'1movedto2' => '[[$1]] ÒéÆ [[$2]] Òü©þº?Õïò', +'1movedto2_redir' => '[[$1]] ÒéÆÒüôÒü«ÒâÜÒâ?Òé©ÒüéÒüªÒü«Òâ¬ÒâÇÒéñÒâ¼ Òé»Òâê [[$2]] Òü©þº?Õïò', 'movelogpage' => 'þº?ÕïòÞ¿ÿÚî?', 'movelogpagetext' => 'õ?Ñõ©ïÒü»µ£ÇÞ?æÒü«ÒâÜÒâ?Òé©þº?ÕïòÒü«Þ¿ÿÚî? ÒüºÒüÖÒÇé', 'movereason' => 'þÉåþö?', @@ -1278,9 +1278,9 @@ # Namespace 8 related 'allmessages' => 'Þí¿þñ?ÒâíÒââÒé?Òâ?Òé©õ©ÇÞªº', -'allmessagesname' => 'ÕÉìþº?', -'allmessagesdefault' => 'ÒâçÒâòÒé®Òâ½ÒâêÒü«ÒâåÒé¡Òé?Òâê', -'allmessagescurrent' => 'þÅ¥Õ£¿Òü«ÒâåÒé¡Òé?Òâê', +'allmessagesname' => 'ÒâíÒââÒé?Òâ?Òé©ÕÉì', +'allmessagesdefault' => 'µùóÕ«ÜÒü«µûçþ½á', +'allmessagescurrent' => 'þÅ¥Õ£¿Òü«µûçþ½á', 'allmessagestext' => 'ÒüôÒéîÒü»MediaWikiÕÉìÕëìþ®?ÚûôÒü½ÒüéÒéïÕà¿ ÒüªÒü«ÒéÀÒé?ÒâåÒâáÒâíÒââÒé?Òâ?Òé©Òü«õ©ÇÞªºÒüºÒüÖÒÇé', 'allmessagesnotsupportedUI' => 'ÒüôÒü«ÒéÁÒéñÒâêÒüºÒü»ÒÇüÒüéÒü¬ÒüfÒü«þÅ¥Õ£¿Òü«ÒéñÒâ?Òé?Òâ?ÒâòÒéºÒéñÒé?Þ¿ ÇÞ¬× <b>$1</b> Òü½ÒüèÒüæÒéï {{ns:Special}}:Allmessages Òü»ÒéÁÒâØÒâ? ÒâêÒüòÒéîÒüªÒüäÒü¥ÒüøÒéôÒÇé', 'allmessagesnotsupportedDB' => 'wgUseDatabaseMessages ÒüîþäíÕè? Òü«ÒüfÒéüÒÇü{{ns:Special}}:Allmessages Òü»ÒéÁÒâØÒâ? ÒâêÒüòÒéîÒü¥ÒüøÒéôÒÇé', @@ -1301,6 +1301,8 @@ 'importsuccess' => 'ÕÅûÒéèÞ¥?Òü?Òü½µêÉÕèfÒüùÒü¥ÒüùÒüfÒÇé', 'importhistoryconflict' => 'ÕÅûÒéèÞ¥?Òü?µÖéÒü½ÒüäÒüÅÒüñÒüïÒü«þëêÒüîþ½ ÂÕÉêÒüùÒü¥ÒüùÒüf´?êõ?ÑÕëìÒü½ÕÉîÒüÿÒâÜÒâ?Òé©ÒéÆÕÅûÒéèÞ¥? ÒéôÒüºÒüäÒü¥ÒüøÒéôÒüï´?ëÒÇé', 'importnosources' => 'TranswikiÒü«Þ¬¡Òü?Þ¥?Òü? ÕàâÒüîÕ«Üþ¥®ÒüòÒéîÒüªÒüäÒü¬ÒüäÒüfÒéüÒÇüÕ?ѵ¡?Òü«þø?µÄÑÒéóÒââÒâùÒâ¡Òâ? ÒâëÒü»þäíÕè?Òü½Òü¬ÒüúÒüªÒüäÒü¥ÒüÖÒÇé', +'importnofile' => 'ÒâòÒéíÒéñÒâ½ÒüîÒéóÒââÒâùÒâ¡Òâ? ÒâëÒüòÒéîÒü¥ÒüøÒéôÒüºÒüùÒüf', +'importuploaderror' => 'ÒâòÒéíÒéñÒâ½Òü«ÕÅûÒéèÞ¥?Òü?Òü½Õñ? µòùÒüùÒü¥ÒüùÒüfÒÇéµüÉÒéëÒüÅÒÇüÞ¿?ÕÅ»ÒüòÒéîÒüªÒüäÒéïµ£ÇÕñºÒâòÒéíÒéñÒâ½ ÒéÁÒéñÒé?ÒéêÒéèÕñºÒüìÒü¬ÒâòÒéíÒéñÒâ½ÒéÆÒéóÒââÒâùÒâ¡Òâ?ÒâëÒüùÒéêÒüåÒü¿ ÒüùÒüªÒüäÒü¥ÒüÖÒÇé', # Keyboard access keys for power users 'accesskey-search' => 'f', @@ -1465,10 +1467,10 @@ 'mediawarning' => "'''Þ¡ªÕæè:''' ÒüôÒü«ÒâòÒéíÒéñÒâ½Òü»µé¬µäÅÒü«ÒüéÒéïÒé ?Òâ?ÒâëÒéÆÕɽÒéôÒüºÒüäÒéïÕÅ»Þ⢵ǺÒüîÒüéÒéèÒÇüÕ«fÞíîÒüÖÒéïÒü¿Òé?Òâ? ÒâöÒâÑÒâ?Òé?Òâ?ÒüîÕì?Õ«?ÒéÆÞó½ÒéïÕá?ÕÉêÒüîÒüéÒéèÒü¥ÒüÖÒÇé ----", -'fileinfo' => '$1KB, MIME type: <code>$2</code>', +'fileinfo' => '$1KB, MIMEÒé?ÒéñÒâù: <code>$2</code>', # Metadata -'metadata' => 'Metadata', +'metadata' => 'ÒâíÒé?ÒâçÒâ?Òé?', # Exif tags 'exif-imagewidth' => 'þö?ÕâÅÒü«Õ?à', @@ -1481,8 +1483,8 @@ 'exif-planarconfiguration' => 'ÒâçÒâ?Òé?µá?þ?ìÕ¢óÕ?Å', 'exif-ycbcrsubsampling' => 'YCCÒü«þö?þ?ᵺïµêÉ´?êCÒü«ÚûôÕ?òÒüìþÄç´?ë', 'exif-ycbcrpositioning' => 'YCCÒü«þö?þ?ᵺïµêÉ´?êYÒü¿CÒü«õ¢ìþ¢«´?ë', -'exif-xresolution' => 'µ??Õ??µû?ÕÉæÒü«ÞºúÕâÅÕ?ª', -'exif-yresolution' => 'Õ×éþø?µû?ÕÉæÒü«ÞºúÕâÅÕ?ª', +'exif-xresolution' => 'µ??Õ??ÞºúÕâÅÕ?ª', +'exif-yresolution' => 'Õ×éþø?ÞºúÕâÅÕ?ª', 'exif-resolutionunit' => 'ÞºúÕâÅÕ?ªÒü«Õìÿõ¢ì', 'exif-stripoffsets' => 'þö?ÕâÅÒâçÒâ?Òé?Òü«Õá?µëÇ', 'exif-rowsperstrip' => 'Òé?ÒâêÒâ¬ÒââÒâùÒü«Òâ®ÒéñÒâ?µò?', @@ -1495,25 +1497,25 @@ 'exif-ycbcrcoefficients' => 'Þë?ÕñëµÅøÒâ×ÒâêÒâ¬ÒââÒé»Òé?õ?éµò?', 'exif-referenceblackwhite' => 'ÕÅéþàºÚ?ÆÞë?þé?ÕÇñÒâ?ÕÅéþàºþÖ¢Þë?þé? ÕÇñ', 'exif-datetime' => 'ÒâòÒéíÒéñÒâ½Õñëµø?µùѵÖé', -'exif-imagedescription' => 'þö?ÕâÅÒü«Òé?ÒéñÒâêÒâ½', -'exif-make' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«ÒâíÒâ?Òé½Òâ?ÕÉì', -'exif-model' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«ÒâóÒâçÒâ½ÕÉì', -'exif-software' => 'õ¢?þö¿Òé¢ÒâòÒâêÒéªÒéºÒéó', -'exif-artist' => 'õ¢£ÞÇàÕÉì', +'exif-imagedescription' => 'þö?ÕâÅÒü«Þ¬¼µÿÄ', +'exif-make' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«ÒâíÒâ?Òé½Òâ?', +'exif-model' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«µ®fþ¿«', +'exif-software' => 'ÒâòÒéíÒâ?ÒâáÒéªÒéºÒéóÒü«ÒâÉÒâ?Òé©ÒâºÒâ?', +'exif-artist' => 'õ¢£µêÉÞÇà', 'exif-copyright' => 'Þæùõ¢£µ¿®ÞÇà', 'exif-exifversion' => 'EXIFÒâÉÒâ?Òé©ÒâºÒâ?', 'exif-flashpixversion' => 'Õ»¥Õ?£ÒâòÒâ®ÒââÒéÀÒâÑÒâöÒââÒé»Òé?ÒâÉÒâ? Òé©ÒâºÒâ?', -'exif-colorspace' => 'Þë?þ®?ÚûôµâàÕá?', -'exif-componentsconfiguration' => 'ÕÉäÒé?Òâ?ÒâØÒâ?ÒâìÒâ?ÒâêÒü«µäÅÕæ?', +'exif-colorspace' => 'Þë?þ®?Úûô', +'exif-componentsconfiguration' => 'ÕÉäÒé?Òâ?ÒâØÒâ?ÒâìÒâ?ÒâêÒü«µºïµêÉ', 'exif-compressedbitsperpixel' => 'þö?ÕâÅÕ£ºþ©«ÒâóÒâ?Òâë', -'exif-pixelydimension' => 'Õ«fÕè?þö?ÕâÅÚ½ÿÒüò', -'exif-pixelxdimension' => 'Õ«fÕè?þö?ÕâÅÕ?à', +'exif-pixelydimension' => 'Õ«fÕè?þö?ÕâÅÕ?à', +'exif-pixelxdimension' => 'Õ«fÕè?þö?ÕâÅÚ½ÿÒüò', 'exif-makernote' => 'ÒâíÒâ?Òé½Òâ?ÒâÄÒâ?Òâê', 'exif-usercomment' => 'ÒâªÒâ?ÒéÂÒâ?Òé?ÒâíÒâ?Òâê', 'exif-relatedsoundfile' => 'ÚûóÚÇúÚf?Õú?ÒâòÒéíÒéñÒâ½', 'exif-datetimeoriginal' => 'þö?ÕâÅÒâçÒâ?Òé?þöfµêɵùѵÖé', 'exif-datetimedigitized' => 'ÒâçÒé©Òé?Òâ½ÒâçÒâ?Òé?õ¢£µêɵùѵÖé', -'exif-subsectime' => 'ÒâòÒéíÒéñÒâ½Õñëµø?µùѵÖéÒü«þºÆµ£¬µ?Ç', +'exif-subsectime' => 'ÒâòÒéíÒéñÒâ½Õñëµø?µùѵÖé (þºÆµ£¬µ?Ç)', 'exif-subsectimeoriginal' => 'þö?ÕâÅÒâçÒâ?Òé?þöfµêɵùѵÖé (þºÆµ£¬µ?Ç)', 'exif-subsectimedigitized' => 'ÒâçÒé©Òé?Òâ½ÒâçÒâ?Òé?õ¢£µêɵùѵÖé (þºÆµ£¬µ?Ç)', 'exif-exposuretime' => 'Ú£?Õç?µÖéÚûô', @@ -1524,8 +1526,8 @@ 'exif-oecf' => 'ÕàëÚø?ÕñëµÅøÚûóµò?', 'exif-shutterspeedvalue' => 'ÒéÀÒâúÒââÒé?Òâ?Òé?ÒâöÒâ?Òâë', 'exif-aperturevalue' => 'þÁ×ÒéèÕÇñ', -'exif-brightnessvalue' => 'Þ?ØÕ?ªÕÇñ', -'exif-exposurebiasvalue' => 'Ú£?ÕàëÞú£µ¡úÕÇñ', +'exif-brightnessvalue' => 'µÿÄÒéïÒüò', +'exif-exposurebiasvalue' => 'Ú£?Õç?Þú£µ¡úÕÇñ', 'exif-maxaperturevalue' => 'Òâ¼Òâ?Òé?µ£ÇÕ?ÅFÕÇñ', 'exif-subjectdistance' => 'Þó½ÕåÖõ¢ôÞÀØÚøó', 'exif-meteringmode' => 'µ©¼Õàëµû?Õ?Å', @@ -1547,14 +1549,14 @@ 'exif-customrendered' => 'þö?ÕâÅÕçªþÉå', 'exif-exposuremode' => 'Ú£?Õç?ÒâóÒâ?Òâë', 'exif-whitebalance' => 'ÒâøÒâ»ÒéñÒâêÒâÉÒâ®Òâ?Òé?', -'exif-digitalzoomratio' => 'ÒâçÒé©Òé?Òâ½Òé?Òâ?ÒâáÒü«ÕÇìþÄç', +'exif-digitalzoomratio' => 'ÒâçÒé©Òé?Òâ½Òé?Òâ?ÒâáÕÇìþÄç', 'exif-focallengthin35mmfilm' => 'Òâ¼Òâ?Òé?Òü«þäªþé?ÞÀØÚøó´? ê35mmÒâòÒéúÒâ½ÒâáµÅøþ«ù´?ë', 'exif-scenecapturetype' => 'Þó½ÕåÖõ¢ôÒü«þ¿«ÕêÑ', 'exif-gaincontrol' => 'Òé?ÒéñÒâ?Òé?Òâ?ÒâêÒâ¡Òâ?Òâ½', 'exif-contrast' => 'Òé?Òâ?ÒâêÒâ®Òé?Òâê', 'exif-saturation' => 'Õ¢®Õ?ª', 'exif-sharpness' => 'ÒéÀÒâúÒâ?ÒâùÒâìÒé?', -'exif-devicesettingdescription' => 'Þúàþ¢«Òé?ÒââÒâåÒéúÒâ?Òé?Òü«Þ¬¼µÿÄ', +'exif-devicesettingdescription' => 'µ®fÕÖ¿Þ¿¡Õ«Ü', 'exif-subjectdistancerange' => 'Þó½ÕåÖõ¢ôÞÀØÚøóÒü«þ»äÕø?', 'exif-imageuniqueid' => 'ÒâªÒâïÒâ?Òé»þö?ÕâÅID', 'exif-gpsversionid' => 'GPSÒé?Òé?Òü«ÒâÉÒâ?Òé©ÒâºÒâ?', @@ -1562,25 +1564,25 @@ 'exif-gpslatitude' => 'þÀ»Õ?ª', 'exif-gpslongituderef' => 'µØ?þÁî/ÞÑ?þÁî', 'exif-gpslongitude' => 'þÁîÕ?ª', -'exif-gpsaltituderef' => 'Ú½ÿÕ?ªÒü«Õìÿõ¢ì', +'exif-gpsaltituderef' => 'Ú½ÿÕ?ªÒü«Õf?µ?û', 'exif-gpsaltitude' => 'Ú½ÿÕ?ª', 'exif-gpstimestamp' => 'GPSµÖéÕê?´?êÕÄfաɵÖéÞ¿ê´?ë', 'exif-gpssatellites' => 'µ©¼õ¢ìÒü½þö¿ÒüäÒüfÞíøµÿfõ?íÕÅÀ', 'exif-gpsstatus' => 'GPSÕÅùõ?íµ®fÒü«þèµàï', -'exif-gpsmeasuremode' => 'GPSÒü«µ©¼õ¢ìµû?µ?ò', -'exif-gpsdop' => 'µ©¼õ¢ìÒü«þ?¥Õ?ª', +'exif-gpsmeasuremode' => 'GPSµ©¼õ¢ìµû?µ?ò', +'exif-gpsdop' => 'µ©¼õ¢ìþ?¥Õ?ª', 'exif-gpsspeedref' => 'ÚÇfÕ?ªÒü«Õìÿõ¢ì', 'exif-gpsspeed' => 'ÚÇfÕ?ª', -'exif-gpstrackref' => 'ÚÇ?Þíîµû?ÕÉæÒü«Õìÿõ¢ì', +'exif-gpstrackref' => 'ÚÇ?Þíîµû?ÕÉæÒü«Õf?µ?û', 'exif-gpstrack' => 'ÚÇ?Þíîµû?ÕÉæ', -'exif-gpsimgdirectionref' => 'µÆ«Õ¢?Òü«µû?ÕÉæÒü«Õìÿõ¢ì', -'exif-gpsimgdirection' => 'µÆ«Õ¢?Òü«µû?ÕÉæ', +'exif-gpsimgdirectionref' => 'µÆ«Õ¢?µû?ÕÉæÒü«Õf?µ?û', +'exif-gpsimgdirection' => 'µÆ«Õ¢?µû?ÕÉæ', 'exif-gpsmapdatum' => 'µ©¼Õ£?þ??', 'exif-gpsdestlatituderef' => 'þø«þÜäÕ£?Òü«ÕîùþÀ»/ÕìùþÀ»', 'exif-gpsdestlatitude' => 'þø«þÜäÕ£?Òü«þÀ»Õ?ª', 'exif-gpsdestlongituderef' => 'þø«þÜäÕ£?Òü«µØ?þÁî/ÞÑ?þÁî', 'exif-gpsdestlongitude' => 'þø«þÜäÕ£?Òü«þÁîÕ?ª', -'exif-gpsdestbearingref' => 'þø«þÜäÕ£?Òü«µû?ÞºÆÒü«Õìÿõ¢ì', +'exif-gpsdestbearingref' => 'þø«þÜäÕ£?Òü«µû?ÞºÆÒü«Õf?µ?û', 'exif-gpsdestbearing' => 'þø«þÜäÕ£?Òü«µû?ÞºÆ', 'exif-gpsdestdistanceref' => 'þø«þÜäÕ£?Òü¥ÒüºÒü«ÞÀØÚøóÒü«Õìÿõ¢ì', 'exif-gpsdestdistance' => 'þø«þÜäÕ£?Òü¥ÒüºÒü«ÞÀØÚøó', @@ -1633,7 +1635,7 @@ 'exif-exposureprogram-1' => 'Òâ×ÒâïÒâÑÒéóÒâ½', 'exif-exposureprogram-2' => 'ÒâÄÒâ?Òâ×Òâ½ÒâùÒâ¡Òé?Òâ®Òâá', 'exif-exposureprogram-3' => 'Ú£?Õç?Õä¬Õàê', -'exif-exposureprogram-4' => 'ÒéÀÒâúÒââÒé?Òâ?Õä¬Õàê', +'exif-exposureprogram-4' => 'ÒéÀÒâúÒââÒé?Òâ?ÚÇfÕ?ªÕä¬Õàê', 'exif-exposureprogram-5' => 'Òé»Òâ¬Òé¿ÒéñÒâåÒéúÒâûÒâùÒâ¡Òé?Òâ®Òâá', 'exif-exposureprogram-6' => 'ÒéóÒé»ÒéÀÒâºÒâ?ÒâùÒâ¡Òé?Òâ®Òâá', 'exif-exposureprogram-7' => 'ÒâØÒâ?ÒâêÒâ¼ÒéñÒâêÒâóÒâ?Òâë´?êÞ?æµÖ»´?ë', @@ -1798,13 +1800,12 @@ 'scarytranscludetoolong' => '[URL is too long; sorry]', # Trackbacks -'trackbackbox' => "<div id='mw_trackbacks'> +'trackbackbox' => '<div id="mw_trackbacks"> ÒüôÒü«Úáàþø«Òü©Òü«ÒâêÒâ®ÒââÒé»ÒâÉÒââÒé»: $1 -</div>", -'trackback' => '; $4$5 : [$2 $1]', -'trackbackexcerpt' => ';$4$5 -:[$2 $1]: <nowiki>$3</nowiki>', +</div>', +# 'trackback' => '', +# 'trackbackexcerpt' => '', 'trackbackremove' => ' ([$1 ÕëèÚÖñ])', 'trackbacklink' => 'ÒâêÒâ®ÒââÒé»ÒâÉÒââÒé»', 'trackbackdeleteok' => 'ÒâêÒâ®ÒââÒé»ÒâÉÒââÒé»ÒéÆÕëèÚÖñÒüùÒü¥ÒüùÒüfÒÇé', _____ Copied:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageKs.php
(from rev 20770, vendor/mediawiki/current/languages/LanguageKs.php) _____ Copied:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageSd.php
(from rev 20770, vendor/mediawiki/current/languages/LanguageSd.php) _____ Copied:
trunk/web/reactos.org/htdocs/wiki/languages/LanguageUg.php
(from rev 20770, vendor/mediawiki/current/languages/LanguageUg.php) _____ Modified:
trunk/web/reactos.org/htdocs/wiki/maintenance/entities2literals.pl
---
trunk/web/reactos.org/htdocs/wiki/maintenance/entities2literals.pl
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/maintenance/entities2literals.pl
2006-01-10 22:33:07 UTC (rev 20771) @@ -1,4 +1,4 @@ -#!/usr/bin/evn perl +#!/usr/bin/env perl # Takes STDIN and converts Converts hexadecimal, decimal and named HTML # entities to their respective literals. # _____ Modified:
trunk/web/reactos.org/htdocs/wiki/maintenance/namespace2sql.php
---
trunk/web/reactos.org/htdocs/wiki/maintenance/namespace2sql.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/maintenance/namespace2sql.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -1,5 +1,4 @@ <?php -# $Header: /cvsroot/wikipedia/phase3/maintenance/namespace2sql.php,v 1.1 2005/03/20 03:29:12 kateturner Exp $ # # Print SQL to insert namespace names into database. # This source code is in the public domain. _____ Deleted:
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_tables.sql
---
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_tables.sql
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_tables.sql
2006-01-10 22:33:07 UTC (rev 20771) @@ -1,285 +0,0 @@ --- --- Database schema for MediaWiki PostgreSQL support --- --- - -CREATE SCHEMA mediawiki; -SET search_path=mediawiki; - -CREATE TABLE cur ( - cur_id serial PRIMARY KEY, - cur_namespace smallint NOT NULL, - cur_title varchar(255) NOT NULL, - cur_text text NOT NULL, - cur_comment text, - cur_user integer DEFAULT 0 NOT NULL, - cur_user_text varchar(255) DEFAULT ''::varchar NOT NULL, - cur_timestamp timestamp without time zone NOT NULL, - cur_restrictions text DEFAULT ''::text NOT NULL, - cur_counter bigint DEFAULT 0 NOT NULL, - cur_is_redirect smallint DEFAULT 0 NOT NULL, - cur_minor_edit smallint DEFAULT 0 NOT NULL, - cur_is_new smallint DEFAULT 0 NOT NULL, - cur_random double precision DEFAULT random(), - cur_touched timestamp without time zone -); -CREATE INDEX cur_title_namespace_idx ON cur (cur_title, cur_namespace); -CREATE INDEX cur_random_idx ON cur (cur_random); -CREATE INDEX cur_name_title_timestamp_idx ON cur (cur_namespace, cur_title, cur_timestamp); -CREATE INDEX cur_timestamp_idx ON cur (cur_timestamp); - -CREATE TABLE "old" ( - old_id serial PRIMARY KEY, - old_namespace smallint NOT NULL, - old_title varchar(255) NOT NULL, - old_text text NOT NULL, - old_comment text NOT NULL, - old_user integer NOT NULL, - old_user_text varchar(255) NOT NULL, - old_timestamp timestamp without time zone NOT NULL, - old_minor_edit smallint NOT NULL, - old_flags text NOT NULL -); -CREATE INDEX old_name_title_ts_idx ON "old" (old_namespace, old_title, old_timestamp); -CREATE INDEX old_timestamp ON "old" (old_timestamp); - -CREATE TABLE brokenlinks ( - bl_from integer DEFAULT 0 NOT NULL, - bl_to varchar(255) NOT NULL, - PRIMARY KEY (bl_from,bl_to) - -); -CREATE INDEX bl_to_idx ON brokenlinks (bl_to); - -CREATE TABLE hitcounter ( - hc_id bigint DEFAULT 0 NOT NULL -); -CREATE INDEX hc_id_idx on hitcounter (hc_id); - -CREATE TABLE image ( - img_name varchar(255) PRIMARY KEY, - img_size integer NOT NULL, - img_description text NOT NULL, - img_user integer NOT NULL, - img_user_text varchar(255) NOT NULL, - img_timestamp timestamp without time zone -); -CREATE INDEX img_size_idx ON image (img_size); -CREATE INDEX img_timestamp ON image (img_timestamp); - -CREATE TABLE imagelinks ( - il_from integer, - il_to varchar(255), - PRIMARY KEY (il_from, il_to) -); -CREATE INDEX il_to_idx ON imagelinks (il_to); - - -CREATE TABLE categorylinks ( - cl_from integer DEFAULT 0 NOT NULL, - cl_to varchar(255) NOT NULL, - cl_sortkey varchar(255) NOT NULL, - cl_timestamp timestamp without time zone, - PRIMARY KEY (cl_from,cl_to) -); -CREATE INDEX cl_to_sortkey_idx ON categorylinks (cl_to, cl_sortkey); -CREATE INDEX cl_to_timestamp ON categorylinks (cl_to, cl_timestamp); - -CREATE TABLE links ( - l_from integer NOT NULL, - l_to integer NOT NULL, - PRIMARY KEY (l_from,l_to) -); -CREATE INDEX l_to_idx ON links (l_to); - - -CREATE TABLE linkscc ( - lcc_pageid integer PRIMARY KEY, - lcc_title varchar(255) DEFAULT ''::character varying NOT NULL, - lcc_cacheobj text NOT NULL -); -CREATE RULE links_del AS ON DELETE TO links DO DELETE FROM linkscc WHERE (linkscc.lcc_pageid = old.l_from); - -CREATE TABLE searchindex ( - si_page integer PRIMARY KEY, - si_title varchar(255) NOT NULL, - si_text text NOT NULL -); - -CREATE TABLE "user" ( - user_id serial PRIMARY KEY, - user_name varchar(255) UNIQUE NOT NULL, - user_real_name varchar(255) NOT NULL, - user_rights text DEFAULT ''::text NOT NULL, - user_password text DEFAULT ''::text NOT NULL, - user_newpassword text DEFAULT ''::text NOT NULL, - user_email text DEFAULT ''::text NOT NULL, - user_options text DEFAULT ''::text NOT NULL, - user_touched timestamp without time zone DEFAULT '1900-01-01 00:00:00'::timestamp without time zone NOT NULL, - user_token char(32) DEFAULT '' NOT NULL -); - - -CREATE TABLE user_newtalk ( - user_id integer NOT NULL, - user_ip inet NOT NULL -); -CREATE INDEX user_newtalk_id_idx ON user_newtalk (user_id); -CREATE INDEX user_newtalk_ip_idx ON user_newtalk (user_ip); - -CREATE TABLE ipblocks ( - ipb_id serial PRIMARY KEY, - ipb_address inet NOT NULL, - ipb_user integer NOT NULL, - ipb_by integer NOT NULL, - ipb_reason text NOT NULL, - ipb_timestamp timestamp without time zone NOT NULL, - ipb_auto smallint NOT NULL, - ipb_expiry timestamp without time zone NOT NULL -); -CREATE INDEX ipb_address_idx ON ipblocks (ipb_address); -CREATE INDEX ipb_user_idx ON ipblocks (ipb_user); - -CREATE TABLE math ( - math_inputhash varchar(16) PRIMARY KEY, - math_outputhash varchar(16) NOT NULL, - math_html_conservativeness smallint NOT NULL, - math_html text, - math_mathml text -); - -CREATE TABLE objectcache ( - keyname varchar(255) PRIMARY KEY, - value text, - exptime timestamp without time zone -); -CREATE INDEX oc_exptime ON objectcache (exptime); - -CREATE TABLE archive ( - ar_namespace smallint NOT NULL, - ar_title varchar(255) NOT NULL, - ar_text text NOT NULL, - ar_comment text NOT NULL, - ar_user integer NOT NULL, - ar_user_text varchar(255) NOT NULL, - ar_timestamp timestamp without time zone NOT NULL, - ar_minor_edit smallint NOT NULL, - ar_flags text NOT NULL -); - -CREATE TABLE recentchanges ( - rc_id serial PRIMARY KEY, - rc_timestamp timestamp without time zone NOT NULL, - rc_cur_time timestamp without time zone NOT NULL, - rc_user integer NOT NULL, - rc_user_text varchar(255) NOT NULL, - rc_namespace smallint NOT NULL, - rc_title varchar(255) NOT NULL, - rc_comment text NOT NULL, - rc_minor smallint NOT NULL, - rc_bot smallint NOT NULL, - rc_new smallint NOT NULL, - rc_cur_id integer NOT NULL, - rc_this_oldid integer NOT NULL, - rc_last_oldid integer NOT NULL, - rc_type smallint NOT NULL, - rc_moved_to_ns smallint, - rc_moved_to_title varchar, - rc_ip inet, - rc_patrolled smallint -); -CREATE INDEX rc_ip ON recentchanges (rc_ip); -CREATE INDEX rc_new_name_ts_idx ON recentchanges (rc_new, rc_namespace, rc_timestamp); -CREATE INDEX rc_cur_id_idx ON recentchanges (rc_cur_id); - -CREATE TABLE site_stats ( - ss_row_id serial PRIMARY KEY, - ss_total_views bigint NOT NULL, - ss_total_edits bigint NOT NULL, - ss_good_articles bigint NOT NULL -); - -CREATE TABLE oldimage ( - oi_name varchar(255) NOT NULL, - oi_archive_name varchar(255) NOT NULL, - oi_size integer NOT NULL, - oi_description text NOT NULL, - oi_user integer NOT NULL, - oi_user_text varchar(255) NOT NULL, - oi_timestamp timestamp without time zone NOT NULL -); -CREATE INDEX oi_name_idx ON oldimage (oi_name); - -CREATE TABLE querycache ( - qc_type char(32), - qc_value integer, - qc_namespace smallint, - qc_title char(255) -); -CREATE INDEX qc_type_value_idx ON querycache (qc_type, qc_value); - -CREATE TABLE watchlist ( - wl_user integer NOT NULL, - wl_namespace smallint NOT NULL, - wl_title varchar(255) NOT NULL, - PRIMARY KEY (wl_user, wl_namespace, wl_title) -); -CREATE INDEX idx_wl_user ON watchlist (wl_user); -CREATE INDEX idx_wl_title ON watchlist (wl_title); - -CREATE TABLE interwiki ( - iw_prefix char(32) PRIMARY KEY, - iw_url varchar(127) NOT NULL, - iw_local smallint NOT NULL -); - -CREATE TABLE profiling ( - pf_count integer, - pf_time double precision, - pf_name varchar(255) PRIMARY KEY -); - -CREATE TABLE validate ( - val_user integer DEFAULT 0 NOT NULL, - val_title varchar(255) NOT NULL, - val_timestamp timestamp without time zone NOT NULL, - val_type integer DEFAULT 0 NOT NULL, - val_value integer DEFAULT 0 NOT NULL, - val_comment varchar(255) NOT NULL -); -CREATE INDEX val_user ON validate (val_user, val_title, val_timestamp); - -CREATE TABLE user_rights ( - user_id integer PRIMARY KEY, - user_rights text NOT NULL -); - -CREATE TABLE logging ( - log_type character(10) NOT NULL, - log_action character(10) NOT NULL, - log_timestamp timestamp without time zone NOT NULL, - log_user integer NOT NULL, - log_namespace smallint NOT NULL, - log_title character varying(255) NOT NULL, - log_comment character varying(255) NOT NULL -); - -CREATE INDEX log_type_time ON logging USING btree (log_type, log_timestamp); -CREATE INDEX log_user_time ON logging USING btree (log_user, log_timestamp); -CREATE INDEX log_page_time ON logging USING btree (log_namespace, log_title, log_timestamp); - - --- HACK HACK HACK -CREATE TABLE "group" ( - group_id integer PRIMARY KEY, - group_name varchar(50) NOT NULL, - group_description varchar(255) NOT NULL, - group_rights text NOT NULL -); - --- Relation table between user and groups -CREATE TABLE user_groups ( - ug_user integer NOT NULL, - ug_group integer NOT NULL, - PRIMARY KEY (ug_user,ug_group) -); _____ Deleted:
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_users.sql
---
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_users.sql
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/maintenance/postgresql/pg_users.sql
2006-01-10 22:33:07 UTC (rev 20771) @@ -1,14 +0,0 @@ --- access rights for wiki database users -CREATE USER {$wgDBuser} - PASSWORD '{$wgDBpassword}'; - -GRANT SELECT,INSERT,UPDATE,DELETE ON - archive,brokenlinks,categorylinks,cur, - cur_cur_id_seq,hitcounter,image,imagelinks, - interwiki,ipblocks,ipblocks_ipb_id_seq,links, - linkscc,math,objectcache,"old",old_old_id_seq, - oldimage,profiling,querycache,recentchanges, - recentchanges_rc_id_seq,searchindex,site_stats, - site_stats_ss_row_id_seq,"user",user_newtalk, - user_rights,user_user_id_seq,validate,watchlist -TO {$wgDBuser}; _____ Copied:
trunk/web/reactos.org/htdocs/wiki/maintenance/removeUnusedAccounts.inc
(from rev 20770, vendor/mediawiki/current/maintenance/removeUnusedAccounts.inc) _____ Copied:
trunk/web/reactos.org/htdocs/wiki/maintenance/removeUnusedAccounts.php
(from rev 20770, vendor/mediawiki/current/maintenance/removeUnusedAccounts.php) _____ Modified:
trunk/web/reactos.org/htdocs/wiki/profileinfo.php
---
trunk/web/reactos.org/htdocs/wiki/profileinfo.php
2006-01-10 22:29:01 UTC (rev 20770) +++
trunk/web/reactos.org/htdocs/wiki/profileinfo.php
2006-01-10 22:33:07 UTC (rev 20771) @@ -21,7 +21,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - $Id: profileinfo.php,v 1.4 2005/07/06 05:18:09 vibber Exp $ --> <html> <head>
18 years, 11 months
1
0
0
0
[gvg] 20770: MediaWiki 1.5.5 vendor drop
by gvg@svn.reactos.org
MediaWiki 1.5.5 vendor drop Modified: vendor/mediawiki/current/RELEASE-NOTES Modified: vendor/mediawiki/current/docs/hooks.txt Modified: vendor/mediawiki/current/includes/Article.php Modified: vendor/mediawiki/current/includes/DefaultSettings.php Modified: vendor/mediawiki/current/includes/Linker.php Modified: vendor/mediawiki/current/includes/MimeMagic.php Modified: vendor/mediawiki/current/includes/Parser.php Modified: vendor/mediawiki/current/includes/Setup.php Modified: vendor/mediawiki/current/includes/SpecialWhatlinkshere.php Modified: vendor/mediawiki/current/includes/UserTalkUpdate.php Added: vendor/mediawiki/current/languages/LanguageArc.php Modified: vendor/mediawiki/current/languages/LanguageDa.php Added: vendor/mediawiki/current/languages/LanguageDv.php Modified: vendor/mediawiki/current/languages/LanguageJa.php Added: vendor/mediawiki/current/languages/LanguageKs.php Added: vendor/mediawiki/current/languages/LanguageSd.php Added: vendor/mediawiki/current/languages/LanguageUg.php Modified: vendor/mediawiki/current/maintenance/entities2literals.pl Modified: vendor/mediawiki/current/maintenance/namespace2sql.php Deleted: vendor/mediawiki/current/maintenance/postgresql/pg_tables.sql Deleted: vendor/mediawiki/current/maintenance/postgresql/pg_users.sql Added: vendor/mediawiki/current/maintenance/removeUnusedAccounts.inc Added: vendor/mediawiki/current/maintenance/removeUnusedAccounts.php Modified: vendor/mediawiki/current/profileinfo.php _____ Modified: vendor/mediawiki/current/RELEASE-NOTES --- vendor/mediawiki/current/RELEASE-NOTES 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/RELEASE-NOTES 2006-01-10 22:29:01 UTC (rev 20770) @@ -3,6 +3,50 @@ Security reminder: MediaWiki does not require PHP's register_globals setting since version 1.2.0. If you have it on, turn it *off* if you can. +== MediaWiki 1.5.5 == + +January 5, 2006 + +MediaWiki 1.5.5 is a security and bugfix maintenance release. + +Detection for uploads of Windows Metafile (.wmf) images has been added +to help protect against a client-side vulnerability in unpatched Microsoft +Windows operating systems. + +Sites which have enabled uploads and added non-standard file types +(such as .ogg, .doc, or .pdf) should upgrade to this release to ensure +that malicious .wmf files can't be uploaded with a fake extension; +such files could put visitors to the site at risk. + +For more details on this, see: +http://en.wikipedia.org/wiki/Windows_Metafile_vulnerability + +Additionally, a maintenance script removeUnusedAccounts.php has been added; +this replaces an older Perl script which had not been updated for the new +schema in 1.5. + + +== MediaWiki 1.5.4 == + +December 21, 2005 + +MediaWiki 1.5.4 is a security and bugfix maintenance release. + +A hardcoded internal placeholder string has been replaced with a random +one. This closes a hole where security checks in inline style attributes +could be bypassed, injecting JavaScript code that could execute in +Microsoft Internet Explorer. + +Other browsers would not be vulnerable. + +Several minor fixes are included in this release, most notably a fix +to clear the "you have new messages" flag properly for usernames +containing spaces when e-mail notification is enabled. + +See the changelog at the end of the release notes for a full list of +fixes. + + == MediaWiki 1.5.3 == December 4, 2005 @@ -937,8 +981,31 @@ * (bug 4071) Generate passwords long enough for $wgMinimalPasswordLength * (bug 4035) Fix prev/next revision links on edit page * (bug 4165) Correct validation for user language selection (data taint) +* Clearer message in DefaultSettings.php: edit LocalSettings.php instead +=== Changes since 1.5.3 === + +* (bug 3805) Clear 'new messages' flag properly in enotif mode + for usernames containing spaces +* (bug 2714) Backlink from special:whatlinkshere was hard set as 'existing' +* (bug 4249) Typo in entities2literals.pl +* (bug 4233) Update for japanese language +* (bug 4279) Small correction to LanguageDa.php +* (bug 4267) Switch dv sd ug ks arc languages to RTL +* (bug 3991) Allow the operation of wikicode on Protect move only text +* Added AutoAuthenticate hook for external User object suppliers +* Parser internal placeholder string now fully randomized for safety + +=== Changes since 1.5.4 === + +* Maintenance script to delete unused user accounts +* Added detection for WMF files (application/x-msmetafile), added this + MIME type to the default blacklist. Prevented inline display of images + which are not of known image types. This is in response to +
http://en.wikipedia.org/wiki/Windows_Metafile_vulnerability
+ + === Caveats === Some output, particularly involving user-supplied inline HTML, may not _____ Modified: vendor/mediawiki/current/docs/hooks.txt --- vendor/mediawiki/current/docs/hooks.txt 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/docs/hooks.txt 2006-01-10 22:29:01 UTC (rev 20770) @@ -282,6 +282,9 @@ $iswatch: watch flag $section: section # +'AutoAuthenticate': called to authenticate users on external/environmental means +$user: writes user object to this parameter + 'BlockIp': before an IP address or user is blocked $block: the Block object about to be saved $user: the user _doing_ the block (not the one being blocked) _____ Modified: vendor/mediawiki/current/includes/Article.php --- vendor/mediawiki/current/includes/Article.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/Article.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -1605,7 +1605,7 @@ $wgOut->setPageTitle( wfMsg( 'confirmprotect' ) ); $wgOut->setSubtitle( wfMsg( 'protectsub', $sub ) ); $wgOut->addWikiText( wfMsg( 'confirmprotecttext' ) ); - $moveonly = htmlspecialchars( wfMsg( 'protectmoveonly' ) ); + $moveonly = wfMsg( 'protectmoveonly' ) ; // add it using addWikiText to prevent xss. bug:3991 $protcom = htmlspecialchars( wfMsg( 'protectcomment' ) ); $formaction = $this->mTitle->escapeLocalURL( 'action=protect' . $par ); } @@ -1631,7 +1631,10 @@ <input type='checkbox' name='wpMoveOnly' value='1' id='wpMoveOnly' /> </td> <td align='left'> - <label for='wpMoveOnly'>{$moveonly}</label> + <label for='wpMoveOnly'> "); + $wgOut->addWikiText( $moveonly ); // bug 3991 + $wgOut->addHTML( " + </label> </td> </tr> " ); } _____ Modified: vendor/mediawiki/current/includes/DefaultSettings.php --- vendor/mediawiki/current/includes/DefaultSettings.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/DefaultSettings.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -1,9 +1,12 @@ <?php /** - * DO NOT EDIT THIS FILE! * - * To customize your installation, edit "LocalSettings.php". + * DO NOT EVER EDIT THIS FILE! * + * + * To customize your installation, edit "LocalSettings.php". If you make + * changes here, they will be lost on next upgrade of MediaWiki! + * * Note that since all these string interpolations are expanded * before LocalSettings is included, if you localize something * like $wgScriptPath, you must also localize everything that @@ -28,7 +31,7 @@ $wgConf = new SiteConfiguration; /** MediaWiki version number */ -$wgVersion = '1.5.3'; +$wgVersion = '1.5.5'; /** Name of the site. It must be changed in LocalSettings.php */ $wgSitename = 'MediaWiki'; @@ -1035,7 +1038,9 @@ # PHP scripts may execute arbitrary code on the server 'application/x-php', 'text/x-php', # Other types that may be interpreted by some servers - 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh' + 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh', + # Windows metafile, client-side vulnerability on some systems + 'application/x-msmetafile' ); /** This is a flag to determine whether or not to check file extensions on upload. */ _____ Modified: vendor/mediawiki/current/includes/Linker.php --- vendor/mediawiki/current/includes/Linker.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/Linker.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -373,6 +373,10 @@ global $wgContLang, $wgUser, $wgThumbLimits; $img = new Image( $nt ); + if ( !$img->allowInlineDisplay() ) { + return $this->makeKnownLinkObj( $nt ); + } + $url = $img->getViewURL(); $prefix = $postfix = ''; @@ -591,7 +595,7 @@ * @access public * @todo Handle invalid or missing images better. */ - function makeMediaLinkObj( $title, $text = '', $nourl=false ) { + function makeMediaLinkObj( $title, $text = '' ) { if( is_null( $title ) ) { ### HOTFIX. Instead of breaking, return empty string. return $text; @@ -600,9 +604,6 @@ $img = new Image( $title ); if( $img->exists() ) { $url = $img->getURL(); - if( $nourl ) { - $url = str_replace( "http://", UNIQ_PREFIX . "NOPARSEhttp://", $url ); - } $class = 'internal'; } else { $upload = Title::makeTitle( NS_SPECIAL, 'Upload' ); _____ Modified: vendor/mediawiki/current/includes/MimeMagic.php --- vendor/mediawiki/current/includes/MimeMagic.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/MimeMagic.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -339,14 +339,21 @@ $fname = 'MimeMagic::guessMimeType'; $mime= $this->detectMimeType($file,$useExt); - if (strpos($mime,"text/")===0 || - $mime==="application/xml") { + // Read a chunk of the file + $f = fopen( $file, "rt" ); + if( !$f ) return "unknown/unknown"; + $head = fread( $f, 1024 ); + fclose( $f ); - // Read a chunk of the file - $f = fopen( $file, "rt" ); - if( !$f ) return "unknown/unknown"; - $head = fread( $f, 1024 ); - fclose( $f ); + $sub4 = substr( $head, 0, 4 ); + if ( $sub4 == "\x01\x00\x09\x00" || $sub4 == "\xd7\xcd\xc6\x9a" ) { + // WMF kill kill kill + // Note that WMF may have a bare header, no magic number. + // The former of the above two checks is theoretically prone to false positives + $mime = "application/x-msmetafile"; + } + + if (strpos($mime,"text/")===0 || $mime==="application/xml") { $xml_type= NULL; $script_type= NULL; _____ Modified: vendor/mediawiki/current/includes/Parser.php --- vendor/mediawiki/current/includes/Parser.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/Parser.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -43,9 +43,6 @@ # may want to use in wikisyntax define( 'STRIP_COMMENTS', 'HTMLCommentStrip' ); -# prefix for escaping, used in two functions at least -define( 'UNIQ_PREFIX', 'NaodW29'); - # Constants needed for external link processing define( 'HTTP_PROTOCOLS', 'http:\/\/|https:\/\/' ); # Everything except bracket, space, or control characters @@ -101,7 +98,7 @@ # Cleared with clearState(): var $mOutput, $mAutonumber, $mDTopen, $mStripState = array(); var $mVariables, $mIncludeCount, $mArgStack, $mLastSection, $mInPre; - var $mInterwikiLinkHolders, $mLinkHolders; + var $mInterwikiLinkHolders, $mLinkHolders, $mUniqPrefix; # Temporary: var $mOptions, $mTitle, $mOutputType, @@ -153,6 +150,7 @@ 'texts' => array(), 'titles' => array() ); + $this->mUniqPrefix = 'UNIQ' . Parser::getRandomString(); } /** @@ -349,7 +347,7 @@ $gallery_content = array(); # Replace any instances of the placeholders - $uniq_prefix = UNIQ_PREFIX; + $uniq_prefix = $this->mUniqPrefix; #$text = str_replace( $uniq_prefix, wfHtmlEscapeFirst( $uniq_prefix ), $text ); # html @@ -508,7 +506,7 @@ * @access private */ function insertStripItem( $text, &$state ) { - $rnd = UNIQ_PREFIX . '-item' . Parser::getRandomString(); + $rnd = $this->mUniqPrefix . '-item' . Parser::getRandomString(); if ( !$state ) { $state = array( 'html' => array(), @@ -777,7 +775,7 @@ # replaceInternalLinks may sometimes leave behind # absolute URLs, which have to be masked to hide them from replaceExternalLinks - $text = str_replace(UNIQ_PREFIX."NOPARSE", "", $text); + $text = str_replace($this->mUniqPrefix."NOPARSE", "", $text); $text = $this->doMagicLinks( $text ); $text = $this->doTableStuff( $text ); @@ -1393,7 +1391,7 @@ $text = $this->replaceInternalLinks($text); # cloak any absolute URLs inside the image markup, so replaceExternalLinks() won't touch them - $s .= $prefix . preg_replace("/\b($wgUrlProtocols)/", UNIQ_PREFIX."NOPARSE$1", $this->makeImage( $nt, $text) ) . $trail; + $s .= $prefix . preg_replace( "/\b($wgUrlProtocols)/", "{$this->mUniqPrefix}NOPARSE$1", $this->makeImage( $nt, $text) ) . $trail; $wgLinkCache->addImageLinkObj( $nt ); wfProfileOut( "$fname-image" ); @@ -1445,7 +1443,9 @@ # Special and Media are pseudo-namespaces; no pages actually exist in them if( $ns == NS_MEDIA ) { - $s .= $prefix . $sk->makeMediaLinkObj( $nt, $text, true ) . $trail; + $link = $sk->makeMediaLinkObj( $nt, $text ); + # Cloak with NOPARSE to avoid replacement in replaceExternalLinks + $s .= $prefix . str_replace( 'http://', "http{$this->mUniqPrefix}NOPARSE://", $link ) . $trail; $wgLinkCache->addImageLinkObj( $nt ); continue; } elseif( $ns == NS_SPECIAL ) { @@ -1751,12 +1751,11 @@ if( 0 == $prefixLength ) { wfProfileIn( "$fname-paragraph" ); # No prefix (not in list)--go to paragraph mode - $uniq_prefix = UNIQ_PREFIX; // XXX: use a stack for nestable elements like span, table and div $openmatch = preg_match('/(<table|<blockquote|<h1|<h2|<h3|<h4|<h5|<h6|<pre|<tr|<p|<ul |<li|<\\/tr|<\\/td|<\\/th)/iS', $t ); $closematch = preg_match( '/(<\\/table|<\\/blockquote|<\\/h1|<\\/h2|<\\/h3|<\\/h4|<\\/h5|<\\/h6|'. - '<td|<th|<div|<\\/div|<hr|<\\/pre|<\\/p|'.$uniq_prefix.'-pre|<\\/li|<\\/ ul)/iS', $t ); + '<td|<th|<div|<\\/div|<hr|<\\/pre|<\\/p|'.$this->mUniqPrefix.'-pre|<\\/l i|<\\/ul)/iS', $t ); if ( $openmatch or $closematch ) { $paragraphStack = false; $output .= $this->closeParagraph(); _____ Modified: vendor/mediawiki/current/includes/Setup.php --- vendor/mediawiki/current/includes/Setup.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/Setup.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -206,7 +206,11 @@ # Prevent loading User settings from the DB. $wgUser->setLoaded( true ); } else { - $wgUser = User::loadFromSession(); + $wgUser = null; + wfRunHooks('AutoAuthenticate',array(&$wgUser)); + if ($wgUser === null) { + $wgUser = User::loadFromSession(); + } } wfProfileOut( $fname.'-User' ); _____ Modified: vendor/mediawiki/current/includes/SpecialWhatlinkshere.php --- vendor/mediawiki/current/includes/SpecialWhatlinkshere.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/SpecialWhatlinkshere.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -32,7 +32,7 @@ $sk = $wgUser->getSkin(); $isredir = ' (' . wfMsg( 'isredirect' ) . ")\n"; - $wgOut->addHTML('< '.$sk->makeKnownLinkObj($nt, '', 'redirect=no' )."<br />\n"); + $wgOut->addHTML('< '.$sk->makeLinkObj($nt, '', 'redirect=no' )."<br />\n"); wfShowIndirectLinks( 0, $nt, $limit, $offset ); } _____ Modified: vendor/mediawiki/current/includes/UserTalkUpdate.php --- vendor/mediawiki/current/includes/UserTalkUpdate.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/includes/UserTalkUpdate.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -50,7 +50,7 @@ $this->mAction = $action; $this->mNamespace = $ns; - $this->mTitle = $title; # str_replace( '_', ' ', $title ); # I do not know, why this was needed . T. Gries 23.11.2004 + $this->mTitle = $title; $this->mSummary = $summary; $this->mMinorEdit = $minoredit; $this->mTimestamp = $timestamp; @@ -62,7 +62,7 @@ # If the user talk page is our own, clear the flag # when we are reading it or writing it. - if ( 0 == strcmp( $this->mTitle, $wgUser->getName() ) ) { + if ( 0 == strcmp( str_replace( '_', ' ', $this->mTitle ), $wgUser->getName() ) ) { $wgUser->setNewtalk( 0 ); $wgUser->saveSettings(); } else { _____ Added: vendor/mediawiki/current/languages/LanguageArc.php --- vendor/mediawiki/current/languages/LanguageArc.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageArc.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -0,0 +1,18 @@ +<?php +/** Aramaic language file ( ?ò?Ñ?Æ?¬?©?Ø?ø ) + * + * @package MediaWiki + * @subpackage Language + */ + +require_once( 'LanguageUtf8.php' ); + +class LanguageArc extends LanguageUtf8 { + #FIXME: inherit almost everything for now + + function isRTL() { + return true; + } +} + +?> Property changes on: vendor/mediawiki/current/languages/LanguageArc.php ___________________________________________________________________ Name: svn:eol-style + native _____ Modified: vendor/mediawiki/current/languages/LanguageDa.php --- vendor/mediawiki/current/languages/LanguageDa.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageDa.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -570,7 +570,7 @@ Pr?©v en anden foresp?©rgsel.", "matchtotals" => "Foresp?©rgslen \"$1\" opfyldte $2 artikeltitler og teksten i $3 artikler.", -"nogomatch" => "<span style=\"font-size: 135%; font-weight: bold; margin-left: .6em\">{{SITENAME}} har ingen artikel med dette navn</span> <span style=\"display: block; margin: 1.5em 2em\"> Du kan <strong><a href=\"$1\" class=\"new\">oprette en artikel med dette navn</a></strong> eller <a href=\"/wiki/{{ns:4}}:Efterspurgte_artikler\">eftersp?©rge den</a>. <span style=\"display:block; font-size: 89%; margin-left:.2em\">For at undg?Ñ flere artikler om samme emne, bedes du inden oprettelsen s?©ge efter artiklen under alternative navne og stavem?Ñder.</span> </span>", +"nogomatch" => "{{SITENAME}} har ingen artikel med dette navn. Du kan [[$1|oprette en artikel med dette navn]] eller [[{{ns:4}}:Efterspurgte_artikler|eftersp?©rge den]]. For at undg?Ñ flere artikler om samme emne, bedes du inden oprettelsen s?©ge efter artiklen under alternative navne og stavem?Ñder.", "titlematches" => "Artikeltitler der opfyldte foresp?©rgslen", "notitlematches" => "Ingen artikeltitler opfyldte foresp?©rgslen", "textmatches" => "Artikeltekster der opfyldte foresp?©rgslen", _____ Added: vendor/mediawiki/current/languages/LanguageDv.php --- vendor/mediawiki/current/languages/LanguageDv.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageDv.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -0,0 +1,18 @@ +<?php +/** Dhivehi language file ( ÌïÌ¿Ìê̼ÌÇÌ¿Ìä̪ÌÉÌ?', ) + * + * @package MediaWiki + * @subpackage Language + */ + +require_once( 'LanguageUtf8.php' ); + +class LanguageDv extends LanguageUtf8 { + #FIXME: inherit almost everything for now + + function isRTL() { + return true; + } +} + +?> Property changes on: vendor/mediawiki/current/languages/LanguageDv.php ___________________________________________________________________ Name: svn:eol-style + native _____ Modified: vendor/mediawiki/current/languages/LanguageJa.php --- vendor/mediawiki/current/languages/LanguageJa.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageJa.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -67,7 +67,7 @@ # User preference toggles 'tog-underline' => 'Òâ¬Òâ?Òé»Òü«õ©ïþÀÜ:', -'tog-highlightbroken' => 'µ£¬õ¢£µêÉÒü«ÒâÜÒâ?Òé©Òü©Òü«Òâ¬Òâ?Òé»ÒéÆ<a href="javascript:void(0);" class="new" onclick="return false;">ÒâÅÒéñÒâ®ÒéñÒâê</a>ÒüÖÒéï (ÒâüÒéºÒââÒé»ÒüùÒü¬ÒüäÒü¿ÒüôÒü«ÒéêÒüåÒü½<a href="javascript:void(0);" class="internal" onclick="return false;">?</a>Òü¬Òéï)', +'tog-highlightbroken' => 'µ£¬õ¢£µêÉÒü«ÒâÜÒâ?Òé©Òü©Òü«Òâ¬Òâ? Òé»ÒéÆÒâÅÒéñÒâ®ÒéñÒâêÒüÖÒéï', 'tog-justify' => 'µ«ÁÞÉ¢ÒéÆÕØçþ¡ëÕë?Òéèõ?ÿÒüæÒüÖÒéï', 'tog-hideminor' => 'µ£ÇÞ?æµø?µû?ÒüùÒüfÒâÜÒâ?Òé©ÒüïÒéëþ??Úâ¿Òü«þÀ¿ ÚøåÒéÆÚÜáÒüÖ', 'tog-usenewrc' => 'µ£ÇÞ?æµø?µû?ÒüùÒüfÒâÜÒâ?Òé©ÒéƵïíÕ?ÁÒüÖÒéï´?êÕ»¥Õ? £ÒüùÒüªÒüäÒü¬ÒüäÒâûÒâ®ÒéªÒéÂÒééÒüéÒéèÒü¥ÒüÖ´?ë', @@ -177,7 +177,7 @@ 'navigation' => 'ÒâèÒâôÒé?Òâ?ÒéÀÒâºÒâ?', # Metadata in edit box -'metadata' => 'Metadata', +'metadata' => 'ÒâíÒé?ÒâçÒâ?Òé?', 'metadata_page' => '{{ns:Project}}:Metadata', 'currentevents' => 'µ£ÇÞ?æÒü«Õç?µØÑõ?ï', @@ -347,7 +347,7 @@ # Login and logout pages # 'logouttitle' => 'ÒâªÒâ?ÒéÂÒâ? Òâ¡Òé?ÒéóÒéªÒâê', -'logouttext' => '<p>Òâ¡ Òé?ÒéóÒéªÒâêÒüùÒü¥ÒüùÒüfÒÇéÒüôÒü«Òü¥Òü¥{{SITENAME}}ÒéÆÕî?ÕÉìÒüºõ¢? ÒüäþÂÜÒüæÒéïÒüôÒü¿ÒüîÒüºÒüìÒü¥ÒüÖÒÇéÒééÒüåõ©ÇÕ?ªÒâ¡Òé?ÒéñÒâ? ÒüùÒüªÕàâÒü«ÒÇüÒüéÒéïÒüäÒü»ÕêÑÒü«ÒâªÒâ?ÒéÂÒâ?Òü¿ÒüùÒüªõ¢?ÒüåÒüôÒü¿ ÒééÒüºÒüìÒü¥ÒüÖÒÇé</p> +'logouttext' => '<p><strong>Òâ¡ Òé?ÒéóÒéªÒâêÒüùÒü¥ÒüùÒüfÒÇé</strong>ÒüôÒü«Òü¥Òü¥{{SITENAME}}ÒéÆÕî? ÕÉìÒüºõ¢?ÒüäþÂÜÒüæÒéïÒüôÒü¿ÒüîÒüºÒüìÒü¥ÒüÖÒÇéÒééÒüåõ©ÇÕ?ªÒâ¡Òé?ÒéñÒâ? ÒüùÒüªÕàâÒü«ÒÇüÒüéÒéïÒüäÒü»ÕêÑÒü«ÒâªÒâ?ÒéÂÒâ?Òü¿ÒüùÒüªõ¢?ÒüåÒüôÒü¿ ÒééÒüºÒüìÒü¥ÒüÖÒÇé</p> <p>ÔÇ?ÒüäÒüÅÒüñÒüïÒü«ÒâÜÒâ?Òé©Òü»ÒâûÒâ®ÒéªÒéÂÒü«Òé¡ ÒâúÒââÒéÀÒâÑÒéÆÒé»Òâ¬ÒéóÒüÖÒéïÒü¥ÒüºÒâ¡Òé?ÒéñÒâ? ÒüùÒüªÒüäÒéïÒüïÒü«ÒéêÒüåÒü½Þí¿þñ?ÒüòÒéîÒéïÒüôÒü¿ÒüîÒüéÒéèÒü¥ÒüÖÒÇé</p>', 'welcomecreation' => '== $1 ÒüòÒéôÒÇüÒéêÒüåÒüôÒüØ! == @@ -363,7 +363,7 @@ 'yourdomainname' => 'ÒüéÒü¬ÒüfÒü«ÒâëÒâíÒéñÒâ?', 'externaldberror' => 'ÕñûÚâ¿Òü«Þ¬ìÞ¿?ÒâçÒâ?Òé?ÒâÖÒâ?Òé?ÒüºÒé¿Òâ®Òâ? ÒüîþÖ?þöfÒüfÒüïÒÇüÒü¥ÒüfÒü»ÕñûÚâ¿ÒéóÒé½ÒéªÒâ?ÒâêµâàÕá?Òü«µø?µû?ÒüîÞ¿? ÕÅ»ÒüòÒéîÒüªÒüäÒü¥ÒüøÒéôÒÇé', 'loginproblem' => '<b>Òâ¡Òé?ÒéñÒâ?ÒüºÒé¿Òâ®Òâ?ÒüîþÖ? þöfÒüùÒü¥ÒüùÒüfÒÇé</b><br />ÕåìÕ?ªÕ«fÞíîÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé', -'alreadyloggedin' => '<b style="color:red">ÒâªÒâ?ÒéÂÒâ? $1 Òü»ÒÇüÒüÖÒüºÒü½Òâ¡Òé?ÒéñÒâ?µ©êÒü?ÒüºÒüÖÒÇé</b><br />', +'alreadyloggedin' => '<strong>ÒâªÒâ?ÒéÂÒâ? $1 Òü»ÒÇüÒüÖÒüºÒü½Òâ¡ Òé?ÒéñÒâ?µ©êÒü?ÒüºÒüÖÒÇé</strong><br />', 'login' => 'Òâ¡Òé?ÒéñÒâ?', 'loginprompt' => '{{SITENAME}}Òü½Òâ¡Òé?ÒéñÒâ?ÒüÖÒéïÒü½Òü»Òé»ÒââÒé¡Òâ? ÒéƵ£ëÕè?Òü½ÒüÖÒéïÕ?àÞªüÒüîÒüéÒéèÒü¥ÒüÖÒÇé', @@ -482,7 +482,7 @@ 'editingsection' => '$1 ÒéÆþÀ¿Úøåõ©¡ (Òé?Òé»ÒéÀÒâºÒâ?)', 'editingcomment' => '$1 ÒéÆþÀ¿Úøåõ©¡ (µû?ÞªÅÒé?ÒâíÒâ?Òâê)', 'editconflict' => 'þÀ¿Úøåþ½ÂÕÉê: $1', -'explainconflict' => 'ÒüéÒü¬ÒüfÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆþÀ¿ ÚøåÒüùÕºïÒéüÒüfÕ¥îÒü½ÒÇüõ?ûÒü«Þ¬?ÒüïÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆÕñëµø? ÒüùÒü¥ÒüùÒüfÒÇéõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü»þÅ¥Õ£¿ Òü«µ£Çµû?Òü«þèµàïÒüºÒüÖÒÇéÒüéÒü¬ÒüfÒü«þÀ¿ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒü»õ©ïÕü? Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü½þñ?ÒüòÒéîÒüªÒüäÒü¥ÒüÖÒÇéþÀ¿ ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒéÆÒÇüõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü«µûçþ½áÒü½ þÁäÒü?Þ¥?ÒéôÒüºÒüÅÒüáÒüòÒüäÒÇé<strong>õ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿ Òâ¬ÒéóÒü«ÕåàÕ«?ÒüáÒüæ</strong>ÒüîÒÇüÔÇ£µèòþ¿? ÒüÖÒéïÔÇØÒéÆÒé»Òâ¬ÒââÒé»ÒüùÒüfµÖéÒü½Õ«fÚÜøÒü½õ?ØÕ¡ÿÒüòÒéîÒü¥ÒüÖÒÇé', +'explainconflict' => 'ÒüéÒü¬ÒüfÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆþÀ¿ ÚøåÒüùÕºïÒéüÒüfÕ¥îÒü½ÒÇüõ?ûÒü«Þ¬?ÒüïÒüîÒüôÒü«ÒâÜÒâ?Òé©ÒéÆÕñëµø? ÒüùÒü¥ÒüùÒüfÒÇéõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü»þÅ¥Õ£¿ Òü«µ£Çµû?Òü«þèµàïÒüºÒüÖÒÇéÒüéÒü¬ÒüfÒü«þÀ¿ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒü»õ©ïÕü? Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü½þñ?ÒüòÒéîÒüªÒüäÒü¥ÒüÖÒÇéþÀ¿ ÚøåÒüùÒüªÒüäÒüfµûçþ½áÒéÆÒÇüõ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿Òâ¬ÒéóÒü«µûçþ½áÒü½ þÁäÒü?Þ¥?ÒéôÒüºÒüÅÒüáÒüòÒüäÒÇé<strong>õ©èÕü?Òü«ÒâåÒé¡Òé?ÒâêÒé¿ Òâ¬ÒéóÒü«ÕåàÕ«? ÒüáÒüæ</strong>ÒüîÒÇüÒÇî{{int:Savearticle}}ÒÇìÒéÆÒé»Òâ¬ÒââÒé»ÒüùÒüfµÖéÒü ½Õ«fÚÜøÒü½õ?ØÕ¡ÿÒüòÒéîÒü¥ÒüÖÒÇé', 'yourtext' => 'ÒüéÒü¬ÒüfÒü«µûçþ½á', 'storedversion' => 'õ?ØÕ¡ÿÒüòÒéîÒüfþëê', 'nonunicodebrowser' => '<strong>Þ¡ªÕæè: ÒüéÒü¬ÒüfÒü«õ¢?þö¿ ÒüùÒüªÒüäÒéïÒâûÒâ®ÒéªÒéÂÒü»Unicodeõ? ƵÅøÒüºÒü»ÒüéÒéèÒü¥ÒüøÒéôÒÇéÚáàþø«ÒéÆþÀ¿ÚøåÒüÖÒéïÕëìÒü½ÒâûÒâ®ÒéªÒéÂÒéÆÕñ ëµø?ÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé</strong>', @@ -512,7 +512,7 @@ 'loadhist' => 'Õñëµø?Õ?ѵ¡?Òü«Þ¬¡Òü?Þ¥?Òü?õ©¡', 'currentrev' => 'µ£Çµû?þëê', 'revisionasof' => '$1Òü«þëê', -'revisionasofwithlink' => '$1 Òü«þëêÒéÆÞí¿þñ?ÒüùÒüªÒüäÒü¥ÒüÖ ; $2<br />$3 | $4', +'revisionasofwithlink' => '$1 Òü«þëê; $2<br />$3 | $4', 'previousrevision' => 'ÔåÉÕëìÒü«þëê', 'nextrevision' => 'µ¼íÒü«þëêÔåÆ', 'currentrevisionlink' => 'µ£Çµû?þëêÒéÆÞí¿þñ?', @@ -1057,7 +1057,7 @@ 'undeletebtn' => 'Õ¥®Õ©?!', 'undeletedarticle' => '"$1" ÒéÆÕ¥®Õ©?ÒüùÒü¥ÒüùÒüfÒÇé', 'undeletedrevisions' => '$1 þëêÒéÆÕ¥®Õ©?', -'undeletedtext' => '[[:$1]]ÒéÆþäíõ?ïÕ¥®Õ©?ÒüùÒü¥ÒüùÒüfÒÇéµ£ÇÞ? æÒü«ÕëèÚÖñÒü¿Õ¥®Õ©?Òü«Þ¿ÿÚî? Òü»[[Special:Log/delete]]ÒéÆÕÅéþàºÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé', +'undeletedtext' => '[[:$1|$1]]ÒéÆþäíõ?ïÕ¥®Õ©?ÒüùÒü¥ÒüùÒüfÒÇéµ£ÇÞ? æÒü«ÕëèÚÖñÒü¿Õ¥®Õ©?Òü«Þ¿ÿÚî? Òü»[[Special:Log/delete]]ÒéÆÕÅéþàºÒüùÒüªÒüÅÒüáÒüòÒüäÒÇé', # Namespace form on various pages 'namespace' => 'ÕÉìÕëìþ®?Úûô:', @@ -1249,8 +1249,8 @@ 'movetalk' => 'ÒâÄÒâ?ÒâêÒâÜÒâ?Òé©Òüîõ?ÿÚÜÅÒüÖÒéïÕá?ÕÉêÒü½ Òü»ÒÇüÒüØÒéîÒééõ©ÇþÀÆÒü½þº?ÕïòÒüÖÒéï', 'talkpagemoved' => 'õ?ÿÚÜÅÒü«ÒâÄÒâ?ÒâêÒü«ÒâÜÒâ?Òé©Òééþº? ÕïòÒüùÒü¥ÒüùÒüfÒÇé', 'talkpagenotmoved' => 'õ?ÿÚÜÅÒü«ÒâÄÒâ?ÒâêÒü«ÒâÜÒâ?Òé©Òü»<strong>þº? ÕïòÒüòÒéîÒü¥ÒüøÒéôÒüºÒüùÒüfÒÇé</strong>', -'1movedto2' => '$1 ÒéÆ $2 Òü©þº?Õïò', -'1movedto2_redir' => '$1 ÒéÆÒüôÒü«ÒâÜÒâ?Òé©ÒüéÒüªÒü«Òâ¬ÒâÇÒéñÒâ¼Òé»Òâê $2 Òü©þº?Õïò', +'1movedto2' => '[[$1]] ÒéÆ [[$2]] Òü©þº?Õïò', +'1movedto2_redir' => '[[$1]] ÒéÆÒüôÒü«ÒâÜÒâ?Òé©ÒüéÒüªÒü«Òâ¬ÒâÇÒéñÒâ¼ Òé»Òâê [[$2]] Òü©þº?Õïò', 'movelogpage' => 'þº?ÕïòÞ¿ÿÚî?', 'movelogpagetext' => 'õ?Ñõ©ïÒü»µ£ÇÞ?æÒü«ÒâÜÒâ?Òé©þº?ÕïòÒü«Þ¿ÿÚî? ÒüºÒüÖÒÇé', 'movereason' => 'þÉåþö?', @@ -1278,9 +1278,9 @@ # Namespace 8 related 'allmessages' => 'Þí¿þñ?ÒâíÒââÒé?Òâ?Òé©õ©ÇÞªº', -'allmessagesname' => 'ÕÉìþº?', -'allmessagesdefault' => 'ÒâçÒâòÒé®Òâ½ÒâêÒü«ÒâåÒé¡Òé?Òâê', -'allmessagescurrent' => 'þÅ¥Õ£¿Òü«ÒâåÒé¡Òé?Òâê', +'allmessagesname' => 'ÒâíÒââÒé?Òâ?Òé©ÕÉì', +'allmessagesdefault' => 'µùóÕ«ÜÒü«µûçþ½á', +'allmessagescurrent' => 'þÅ¥Õ£¿Òü«µûçþ½á', 'allmessagestext' => 'ÒüôÒéîÒü»MediaWikiÕÉìÕëìþ®?ÚûôÒü½ÒüéÒéïÕà¿ ÒüªÒü«ÒéÀÒé?ÒâåÒâáÒâíÒââÒé?Òâ?Òé©Òü«õ©ÇÞªºÒüºÒüÖÒÇé', 'allmessagesnotsupportedUI' => 'ÒüôÒü«ÒéÁÒéñÒâêÒüºÒü»ÒÇüÒüéÒü¬ÒüfÒü«þÅ¥Õ£¿Òü«ÒéñÒâ?Òé?Òâ?ÒâòÒéºÒéñÒé?Þ¿ ÇÞ¬× <b>$1</b> Òü½ÒüèÒüæÒéï {{ns:Special}}:Allmessages Òü»ÒéÁÒâØÒâ? ÒâêÒüòÒéîÒüªÒüäÒü¥ÒüøÒéôÒÇé', 'allmessagesnotsupportedDB' => 'wgUseDatabaseMessages ÒüîþäíÕè? Òü«ÒüfÒéüÒÇü{{ns:Special}}:Allmessages Òü»ÒéÁÒâØÒâ? ÒâêÒüòÒéîÒü¥ÒüøÒéôÒÇé', @@ -1301,6 +1301,8 @@ 'importsuccess' => 'ÕÅûÒéèÞ¥?Òü?Òü½µêÉÕèfÒüùÒü¥ÒüùÒüfÒÇé', 'importhistoryconflict' => 'ÕÅûÒéèÞ¥?Òü?µÖéÒü½ÒüäÒüÅÒüñÒüïÒü«þëêÒüîþ½ ÂÕÉêÒüùÒü¥ÒüùÒüf´?êõ?ÑÕëìÒü½ÕÉîÒüÿÒâÜÒâ?Òé©ÒéÆÕÅûÒéèÞ¥? ÒéôÒüºÒüäÒü¥ÒüøÒéôÒüï´?ëÒÇé', 'importnosources' => 'TranswikiÒü«Þ¬¡Òü?Þ¥?Òü? ÕàâÒüîÕ«Üþ¥®ÒüòÒéîÒüªÒüäÒü¬ÒüäÒüfÒéüÒÇüÕ?ѵ¡?Òü«þø?µÄÑÒéóÒââÒâùÒâ¡Òâ? ÒâëÒü»þäíÕè?Òü½Òü¬ÒüúÒüªÒüäÒü¥ÒüÖÒÇé', +'importnofile' => 'ÒâòÒéíÒéñÒâ½ÒüîÒéóÒââÒâùÒâ¡Òâ? ÒâëÒüòÒéîÒü¥ÒüøÒéôÒüºÒüùÒüf', +'importuploaderror' => 'ÒâòÒéíÒéñÒâ½Òü«ÕÅûÒéèÞ¥?Òü?Òü½Õñ? µòùÒüùÒü¥ÒüùÒüfÒÇéµüÉÒéëÒüÅÒÇüÞ¿?ÕÅ»ÒüòÒéîÒüªÒüäÒéïµ£ÇÕñºÒâòÒéíÒéñÒâ½ ÒéÁÒéñÒé?ÒéêÒéèÕñºÒüìÒü¬ÒâòÒéíÒéñÒâ½ÒéÆÒéóÒââÒâùÒâ¡Òâ?ÒâëÒüùÒéêÒüåÒü¿ ÒüùÒüªÒüäÒü¥ÒüÖÒÇé', # Keyboard access keys for power users 'accesskey-search' => 'f', @@ -1465,10 +1467,10 @@ 'mediawarning' => "'''Þ¡ªÕæè:''' ÒüôÒü«ÒâòÒéíÒéñÒâ½Òü»µé¬µäÅÒü«ÒüéÒéïÒé ?Òâ?ÒâëÒéÆÕɽÒéôÒüºÒüäÒéïÕÅ»Þ⢵ǺÒüîÒüéÒéèÒÇüÕ«fÞíîÒüÖÒéïÒü¿Òé?Òâ? ÒâöÒâÑÒâ?Òé?Òâ?ÒüîÕì?Õ«?ÒéÆÞó½ÒéïÕá?ÕÉêÒüîÒüéÒéèÒü¥ÒüÖÒÇé ----", -'fileinfo' => '$1KB, MIME type: <code>$2</code>', +'fileinfo' => '$1KB, MIMEÒé?ÒéñÒâù: <code>$2</code>', # Metadata -'metadata' => 'Metadata', +'metadata' => 'ÒâíÒé?ÒâçÒâ?Òé?', # Exif tags 'exif-imagewidth' => 'þö?ÕâÅÒü«Õ?à', @@ -1481,8 +1483,8 @@ 'exif-planarconfiguration' => 'ÒâçÒâ?Òé?µá?þ?ìÕ¢óÕ?Å', 'exif-ycbcrsubsampling' => 'YCCÒü«þö?þ?ᵺïµêÉ´?êCÒü«ÚûôÕ?òÒüìþÄç´?ë', 'exif-ycbcrpositioning' => 'YCCÒü«þö?þ?ᵺïµêÉ´?êYÒü¿CÒü«õ¢ìþ¢«´?ë', -'exif-xresolution' => 'µ??Õ??µû?ÕÉæÒü«ÞºúÕâÅÕ?ª', -'exif-yresolution' => 'Õ×éþø?µû?ÕÉæÒü«ÞºúÕâÅÕ?ª', +'exif-xresolution' => 'µ??Õ??ÞºúÕâÅÕ?ª', +'exif-yresolution' => 'Õ×éþø?ÞºúÕâÅÕ?ª', 'exif-resolutionunit' => 'ÞºúÕâÅÕ?ªÒü«Õìÿõ¢ì', 'exif-stripoffsets' => 'þö?ÕâÅÒâçÒâ?Òé?Òü«Õá?µëÇ', 'exif-rowsperstrip' => 'Òé?ÒâêÒâ¬ÒââÒâùÒü«Òâ®ÒéñÒâ?µò?', @@ -1495,25 +1497,25 @@ 'exif-ycbcrcoefficients' => 'Þë?ÕñëµÅøÒâ×ÒâêÒâ¬ÒââÒé»Òé?õ?éµò?', 'exif-referenceblackwhite' => 'ÕÅéþàºÚ?ÆÞë?þé?ÕÇñÒâ?ÕÅéþàºþÖ¢Þë?þé? ÕÇñ', 'exif-datetime' => 'ÒâòÒéíÒéñÒâ½Õñëµø?µùѵÖé', -'exif-imagedescription' => 'þö?ÕâÅÒü«Òé?ÒéñÒâêÒâ½', -'exif-make' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«ÒâíÒâ?Òé½Òâ?ÕÉì', -'exif-model' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«ÒâóÒâçÒâ½ÕÉì', -'exif-software' => 'õ¢?þö¿Òé¢ÒâòÒâêÒéªÒéºÒéó', -'exif-artist' => 'õ¢£ÞÇàÕÉì', +'exif-imagedescription' => 'þö?ÕâÅÒü«Þ¬¼µÿÄ', +'exif-make' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«ÒâíÒâ?Òé½Òâ?', +'exif-model' => 'þö?ÕâÅÕàÑÕèøµ®fÕÖ¿Òü«µ®fþ¿«', +'exif-software' => 'ÒâòÒéíÒâ?ÒâáÒéªÒéºÒéóÒü«ÒâÉÒâ?Òé©ÒâºÒâ?', +'exif-artist' => 'õ¢£µêÉÞÇà', 'exif-copyright' => 'Þæùõ¢£µ¿®ÞÇà', 'exif-exifversion' => 'EXIFÒâÉÒâ?Òé©ÒâºÒâ?', 'exif-flashpixversion' => 'Õ»¥Õ?£ÒâòÒâ®ÒââÒéÀÒâÑÒâöÒââÒé»Òé?ÒâÉÒâ? Òé©ÒâºÒâ?', -'exif-colorspace' => 'Þë?þ®?ÚûôµâàÕá?', -'exif-componentsconfiguration' => 'ÕÉäÒé?Òâ?ÒâØÒâ?ÒâìÒâ?ÒâêÒü«µäÅÕæ?', +'exif-colorspace' => 'Þë?þ®?Úûô', +'exif-componentsconfiguration' => 'ÕÉäÒé?Òâ?ÒâØÒâ?ÒâìÒâ?ÒâêÒü«µºïµêÉ', 'exif-compressedbitsperpixel' => 'þö?ÕâÅÕ£ºþ©«ÒâóÒâ?Òâë', -'exif-pixelydimension' => 'Õ«fÕè?þö?ÕâÅÚ½ÿÒüò', -'exif-pixelxdimension' => 'Õ«fÕè?þö?ÕâÅÕ?à', +'exif-pixelydimension' => 'Õ«fÕè?þö?ÕâÅÕ?à', +'exif-pixelxdimension' => 'Õ«fÕè?þö?ÕâÅÚ½ÿÒüò', 'exif-makernote' => 'ÒâíÒâ?Òé½Òâ?ÒâÄÒâ?Òâê', 'exif-usercomment' => 'ÒâªÒâ?ÒéÂÒâ?Òé?ÒâíÒâ?Òâê', 'exif-relatedsoundfile' => 'ÚûóÚÇúÚf?Õú?ÒâòÒéíÒéñÒâ½', 'exif-datetimeoriginal' => 'þö?ÕâÅÒâçÒâ?Òé?þöfµêɵùѵÖé', 'exif-datetimedigitized' => 'ÒâçÒé©Òé?Òâ½ÒâçÒâ?Òé?õ¢£µêɵùѵÖé', -'exif-subsectime' => 'ÒâòÒéíÒéñÒâ½Õñëµø?µùѵÖéÒü«þºÆµ£¬µ?Ç', +'exif-subsectime' => 'ÒâòÒéíÒéñÒâ½Õñëµø?µùѵÖé (þºÆµ£¬µ?Ç)', 'exif-subsectimeoriginal' => 'þö?ÕâÅÒâçÒâ?Òé?þöfµêɵùѵÖé (þºÆµ£¬µ?Ç)', 'exif-subsectimedigitized' => 'ÒâçÒé©Òé?Òâ½ÒâçÒâ?Òé?õ¢£µêɵùѵÖé (þºÆµ£¬µ?Ç)', 'exif-exposuretime' => 'Ú£?Õç?µÖéÚûô', @@ -1524,8 +1526,8 @@ 'exif-oecf' => 'ÕàëÚø?ÕñëµÅøÚûóµò?', 'exif-shutterspeedvalue' => 'ÒéÀÒâúÒââÒé?Òâ?Òé?ÒâöÒâ?Òâë', 'exif-aperturevalue' => 'þÁ×ÒéèÕÇñ', -'exif-brightnessvalue' => 'Þ?ØÕ?ªÕÇñ', -'exif-exposurebiasvalue' => 'Ú£?ÕàëÞú£µ¡úÕÇñ', +'exif-brightnessvalue' => 'µÿÄÒéïÒüò', +'exif-exposurebiasvalue' => 'Ú£?Õç?Þú£µ¡úÕÇñ', 'exif-maxaperturevalue' => 'Òâ¼Òâ?Òé?µ£ÇÕ?ÅFÕÇñ', 'exif-subjectdistance' => 'Þó½ÕåÖõ¢ôÞÀØÚøó', 'exif-meteringmode' => 'µ©¼Õàëµû?Õ?Å', @@ -1547,14 +1549,14 @@ 'exif-customrendered' => 'þö?ÕâÅÕçªþÉå', 'exif-exposuremode' => 'Ú£?Õç?ÒâóÒâ?Òâë', 'exif-whitebalance' => 'ÒâøÒâ»ÒéñÒâêÒâÉÒâ®Òâ?Òé?', -'exif-digitalzoomratio' => 'ÒâçÒé©Òé?Òâ½Òé?Òâ?ÒâáÒü«ÕÇìþÄç', +'exif-digitalzoomratio' => 'ÒâçÒé©Òé?Òâ½Òé?Òâ?ÒâáÕÇìþÄç', 'exif-focallengthin35mmfilm' => 'Òâ¼Òâ?Òé?Òü«þäªþé?ÞÀØÚøó´? ê35mmÒâòÒéúÒâ½ÒâáµÅøþ«ù´?ë', 'exif-scenecapturetype' => 'Þó½ÕåÖõ¢ôÒü«þ¿«ÕêÑ', 'exif-gaincontrol' => 'Òé?ÒéñÒâ?Òé?Òâ?ÒâêÒâ¡Òâ?Òâ½', 'exif-contrast' => 'Òé?Òâ?ÒâêÒâ®Òé?Òâê', 'exif-saturation' => 'Õ¢®Õ?ª', 'exif-sharpness' => 'ÒéÀÒâúÒâ?ÒâùÒâìÒé?', -'exif-devicesettingdescription' => 'Þúàþ¢«Òé?ÒââÒâåÒéúÒâ?Òé?Òü«Þ¬¼µÿÄ', +'exif-devicesettingdescription' => 'µ®fÕÖ¿Þ¿¡Õ«Ü', 'exif-subjectdistancerange' => 'Þó½ÕåÖõ¢ôÞÀØÚøóÒü«þ»äÕø?', 'exif-imageuniqueid' => 'ÒâªÒâïÒâ?Òé»þö?ÕâÅID', 'exif-gpsversionid' => 'GPSÒé?Òé?Òü«ÒâÉÒâ?Òé©ÒâºÒâ?', @@ -1562,25 +1564,25 @@ 'exif-gpslatitude' => 'þÀ»Õ?ª', 'exif-gpslongituderef' => 'µØ?þÁî/ÞÑ?þÁî', 'exif-gpslongitude' => 'þÁîÕ?ª', -'exif-gpsaltituderef' => 'Ú½ÿÕ?ªÒü«Õìÿõ¢ì', +'exif-gpsaltituderef' => 'Ú½ÿÕ?ªÒü«Õf?µ?û', 'exif-gpsaltitude' => 'Ú½ÿÕ?ª', 'exif-gpstimestamp' => 'GPSµÖéÕê?´?êÕÄfաɵÖéÞ¿ê´?ë', 'exif-gpssatellites' => 'µ©¼õ¢ìÒü½þö¿ÒüäÒüfÞíøµÿfõ?íÕÅÀ', 'exif-gpsstatus' => 'GPSÕÅùõ?íµ®fÒü«þèµàï', -'exif-gpsmeasuremode' => 'GPSÒü«µ©¼õ¢ìµû?µ?ò', -'exif-gpsdop' => 'µ©¼õ¢ìÒü«þ?¥Õ?ª', +'exif-gpsmeasuremode' => 'GPSµ©¼õ¢ìµû?µ?ò', +'exif-gpsdop' => 'µ©¼õ¢ìþ?¥Õ?ª', 'exif-gpsspeedref' => 'ÚÇfÕ?ªÒü«Õìÿõ¢ì', 'exif-gpsspeed' => 'ÚÇfÕ?ª', -'exif-gpstrackref' => 'ÚÇ?Þíîµû?ÕÉæÒü«Õìÿõ¢ì', +'exif-gpstrackref' => 'ÚÇ?Þíîµû?ÕÉæÒü«Õf?µ?û', 'exif-gpstrack' => 'ÚÇ?Þíîµû?ÕÉæ', -'exif-gpsimgdirectionref' => 'µÆ«Õ¢?Òü«µû?ÕÉæÒü«Õìÿõ¢ì', -'exif-gpsimgdirection' => 'µÆ«Õ¢?Òü«µû?ÕÉæ', +'exif-gpsimgdirectionref' => 'µÆ«Õ¢?µû?ÕÉæÒü«Õf?µ?û', +'exif-gpsimgdirection' => 'µÆ«Õ¢?µû?ÕÉæ', 'exif-gpsmapdatum' => 'µ©¼Õ£?þ??', 'exif-gpsdestlatituderef' => 'þø«þÜäÕ£?Òü«ÕîùþÀ»/ÕìùþÀ»', 'exif-gpsdestlatitude' => 'þø«þÜäÕ£?Òü«þÀ»Õ?ª', 'exif-gpsdestlongituderef' => 'þø«þÜäÕ£?Òü«µØ?þÁî/ÞÑ?þÁî', 'exif-gpsdestlongitude' => 'þø«þÜäÕ£?Òü«þÁîÕ?ª', -'exif-gpsdestbearingref' => 'þø«þÜäÕ£?Òü«µû?ÞºÆÒü«Õìÿõ¢ì', +'exif-gpsdestbearingref' => 'þø«þÜäÕ£?Òü«µû?ÞºÆÒü«Õf?µ?û', 'exif-gpsdestbearing' => 'þø«þÜäÕ£?Òü«µû?ÞºÆ', 'exif-gpsdestdistanceref' => 'þø«þÜäÕ£?Òü¥ÒüºÒü«ÞÀØÚøóÒü«Õìÿõ¢ì', 'exif-gpsdestdistance' => 'þø«þÜäÕ£?Òü¥ÒüºÒü«ÞÀØÚøó', @@ -1633,7 +1635,7 @@ 'exif-exposureprogram-1' => 'Òâ×ÒâïÒâÑÒéóÒâ½', 'exif-exposureprogram-2' => 'ÒâÄÒâ?Òâ×Òâ½ÒâùÒâ¡Òé?Òâ®Òâá', 'exif-exposureprogram-3' => 'Ú£?Õç?Õä¬Õàê', -'exif-exposureprogram-4' => 'ÒéÀÒâúÒââÒé?Òâ?Õä¬Õàê', +'exif-exposureprogram-4' => 'ÒéÀÒâúÒââÒé?Òâ?ÚÇfÕ?ªÕä¬Õàê', 'exif-exposureprogram-5' => 'Òé»Òâ¬Òé¿ÒéñÒâåÒéúÒâûÒâùÒâ¡Òé?Òâ®Òâá', 'exif-exposureprogram-6' => 'ÒéóÒé»ÒéÀÒâºÒâ?ÒâùÒâ¡Òé?Òâ®Òâá', 'exif-exposureprogram-7' => 'ÒâØÒâ?ÒâêÒâ¼ÒéñÒâêÒâóÒâ?Òâë´?êÞ?æµÖ»´?ë', @@ -1798,13 +1800,12 @@ 'scarytranscludetoolong' => '[URL is too long; sorry]', # Trackbacks -'trackbackbox' => "<div id='mw_trackbacks'> +'trackbackbox' => '<div id="mw_trackbacks"> ÒüôÒü«Úáàþø«Òü©Òü«ÒâêÒâ®ÒââÒé»ÒâÉÒââÒé»: $1 -</div>", -'trackback' => '; $4$5 : [$2 $1]', -'trackbackexcerpt' => ';$4$5 -:[$2 $1]: <nowiki>$3</nowiki>', +</div>', +# 'trackback' => '', +# 'trackbackexcerpt' => '', 'trackbackremove' => ' ([$1 ÕëèÚÖñ])', 'trackbacklink' => 'ÒâêÒâ®ÒââÒé»ÒâÉÒââÒé»', 'trackbackdeleteok' => 'ÒâêÒâ®ÒââÒé»ÒâÉÒââÒé»ÒéÆÕëèÚÖñÒüùÒü¥ÒüùÒüfÒÇé', _____ Added: vendor/mediawiki/current/languages/LanguageKs.php --- vendor/mediawiki/current/languages/LanguageKs.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageKs.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -0,0 +1,18 @@ +<?php +/** Kashmiri language file ( ÓñòÓñÂÓÑìÓñ«ÓÑÇÓñ?ÓÑÇ - (´?Ü´?©´?ñ´??´?«´? ?) ) + * + * @package MediaWiki + * @subpackage Language + */ + +require_once( 'LanguageUtf8.php' ); + +class LanguageKs extends LanguageUtf8 { + #FIXME: inherit almost everything for now + + function isRTL() { + return true; + } +} + +?> Property changes on: vendor/mediawiki/current/languages/LanguageKs.php ___________________________________________________________________ Name: svn:eol-style + native _____ Added: vendor/mediawiki/current/languages/LanguageSd.php --- vendor/mediawiki/current/languages/LanguageSd.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageSd.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -0,0 +1,18 @@ +<?php +/** Sindhi language file ( Óñ©Óñ?Óñ¿ÓñºÓñ? ) + * + * @package MediaWiki + * @subpackage Language + */ + +require_once( 'LanguageUtf8.php' ); + +class LanguageSd extends LanguageUtf8 { + #FIXME: inherit almost everything for now + + function isRTL() { + return true; + } +} + +?> Property changes on: vendor/mediawiki/current/languages/LanguageSd.php ___________________________________________________________________ Name: svn:eol-style + native _____ Added: vendor/mediawiki/current/languages/LanguageUg.php --- vendor/mediawiki/current/languages/LanguageUg.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/languages/LanguageUg.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -0,0 +1,18 @@ +<?php +/** Uyghur language file ( Oyghurque ) + * + * @package MediaWiki + * @subpackage Language + */ + +require_once( 'LanguageUtf8.php' ); + +class LanguageUg extends LanguageUtf8 { + #FIXME: inherit almost everything for now + + function isRTL() { + return true; + } +} + +?> Property changes on: vendor/mediawiki/current/languages/LanguageUg.php ___________________________________________________________________ Name: svn:eol-style + native _____ Modified: vendor/mediawiki/current/maintenance/entities2literals.pl --- vendor/mediawiki/current/maintenance/entities2literals.pl 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/maintenance/entities2literals.pl 2006-01-10 22:29:01 UTC (rev 20770) @@ -1,4 +1,4 @@ -#!/usr/bin/evn perl +#!/usr/bin/env perl # Takes STDIN and converts Converts hexadecimal, decimal and named HTML # entities to their respective literals. # _____ Modified: vendor/mediawiki/current/maintenance/namespace2sql.php --- vendor/mediawiki/current/maintenance/namespace2sql.php 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/maintenance/namespace2sql.php 2006-01-10 22:29:01 UTC (rev 20770) @@ -1,5 +1,4 @@ <?php -# $Header: /cvsroot/wikipedia/phase3/maintenance/namespace2sql.php,v 1.1 2005/03/20 03:29:12 kateturner Exp $ # # Print SQL to insert namespace names into database. # This source code is in the public domain. _____ Deleted: vendor/mediawiki/current/maintenance/postgresql/pg_tables.sql --- vendor/mediawiki/current/maintenance/postgresql/pg_tables.sql 2006-01-10 22:25:21 UTC (rev 20769) +++ vendor/mediawiki/current/maintenance/postgresql/pg_tables.sql 2006-01-10 22:29:01 UTC (rev 20770) @@ -1,285 +0,0 @@ --- --- Database schema for MediaWiki PostgreSQL support --- --- - -CREATE SCHEMA mediawiki; -SET search_path=mediawiki; - -CREATE TABLE cur ( - cur_id serial PRIMARY KEY, - cur_namespace smallint NOT NULL, - cur_title varchar(255) NOT NULL, - cur_text text NOT NULL, - cur_comment text, - cur_user integer DEFAULT 0 NOT NULL, - cur_user_text varchar(255) DEFAULT ''::varchar NOT NULL, - cur_timestamp timestamp without time zone NOT NULL, - cur_restrictions text DEFAULT ''::text NOT NULL, - cur_counter bigint DEFAULT 0 NOT NULL, - cur_is_redirect smallint DEFAULT 0 NOT NULL, - cur_minor_edit smallint DEFAULT 0 NOT NULL, - cur_is_new smallint DEFAULT 0 NOT NULL, - cur_random double precision DEFAULT random(), - cur_touched timestamp without time zone -); -CREATE INDEX cur_title_namespace_idx ON cur (cur_title, cur_namespace); -CREATE INDEX cur_random_idx ON cur (cur_random); -CREATE INDEX cur_name_title_timestamp_idx ON cur (cur_namespace, cur_title, cur_timestamp); -CREATE INDEX cur_timestamp_idx ON cur (cur_timestamp); - -CREATE TABLE "old" ( - old_id serial PRIMARY KEY, - old_namespace smallint NOT NULL, - old_title varchar(255) NOT NULL, - old_text text NOT NULL, - old_comment text NOT NULL, - old_user integer NOT NULL, - old_user_text varchar(255) NOT NULL, - old_timestamp timestamp without time zone NOT NULL, - old_minor_edit smallint NOT NULL, - old_flags text NOT NULL -); -CREATE INDEX old_name_title_ts_idx ON "old" (old_namespace, old_title, old_timestamp); -CREATE INDEX old_timestamp ON "old" (old_timestamp); - -CREATE TABLE brokenlinks ( - bl_from integer DEFAULT 0 NOT NULL, - bl_to varchar(255) NOT NULL, - PRIMARY KEY (bl_from,bl_to) - -); -CREATE INDEX bl_to_idx ON brokenlinks (bl_to); - -CREATE TABLE hitcounter ( - hc_id bigint DEFAULT 0 NOT NULL -); -CREATE INDEX hc_id_idx on hitcounter (hc_id); - -CREATE TABLE image ( - img_name varchar(255) PRIMARY KEY, - img_size integer NOT NULL, - img_description text NOT NULL, - img_user integer NOT NULL, - img_user_text varchar(255) NOT NULL, - img_timestamp timestamp without time zone -); -CREATE INDEX img_size_idx ON image (img_size); -CREATE INDEX img_timestamp ON image (img_timestamp); - -CREATE TABLE imagelinks ( - il_from integer, - il_to varchar(255), - PRIMARY KEY (il_from, il_to) -); -CREATE INDEX il_to_idx ON imagelinks (il_to); - - -CREATE TABLE categorylinks ( - cl_from integer DEFAULT 0 NOT NULL, - cl_to varchar(255) NOT NULL, - cl_sortkey varchar(255) NOT NULL, - cl_timestamp timestamp without time zone, - PRIMARY KEY (cl_from,cl_to) -); -CREATE INDEX cl_to_sortkey_idx ON categorylinks (cl_to, cl_sortkey); -CREATE INDEX cl_to_timestamp ON categorylinks (cl_to, cl_timestamp); - -CREATE TABLE links ( - l_from integer NOT NULL, - l_to integer NOT NULL, - PRIMARY KEY (l_from,l_to) -); -CREATE INDEX l_to_idx ON links (l_to); - - -CREATE TABLE linkscc ( - lcc_pageid integer PRIMARY KEY, - lcc_title varchar(255) DEFAULT ''::character varying NOT NULL, - lcc_cacheobj text NOT NULL -); -CREATE RULE links_del AS ON DELETE TO links DO DELETE FROM linkscc WHERE (linkscc.lcc_pageid = old.l_from); - -CREATE TABLE searchindex ( - si_page integer PRIMARY KEY, - si_title varchar(255) NOT NULL, - si_text text NOT NULL -); - -CREATE TABLE "user" ( - user_id serial PRIMARY KEY, - user_name varchar(255) UNIQUE NOT NULL, - user_real_name varchar(255) NOT NULL, - user_rights text DEFAULT ''::text NOT NULL, - user_password text DEFAULT ''::text NOT NULL, - user_newpassword text DEFAULT ''::text NOT NULL, - user_email text DEFAULT ''::text NOT NULL, - user_options text DEFAULT ''::text NOT NULL, - user_touched timestamp without time zone DEFAULT '1900-01-01 00:00:00'::timestamp without time zone NOT NULL, - user_token char(32) DEFAULT '' NOT NULL -); - - -CREATE TABLE user_newtalk ( - user_id integer NOT NULL, - user_ip inet NOT NULL -); -CREATE INDEX user_newtalk_id_idx ON user_newtalk (user_id); -CREATE INDEX user_newtalk_ip_idx ON user_newtalk (user_ip); - -CREATE TABLE ipblocks ( - ipb_id serial PRIMARY KEY, - ipb_address inet NOT NULL, - ipb_user integer NOT NULL, - ipb_by integer NOT NULL, - ipb_reason text NOT NULL, - ipb_timestamp timestamp without time zone NOT NULL, - ipb_auto smallint NOT NULL, - ipb_expiry timestamp without time zone NOT NULL -); -CREATE INDEX ipb_address_idx ON ipblocks (ipb_address); -CREATE INDEX ipb_user_idx ON ipblocks (ipb_user); - -CREATE TABLE math ( - math_inputhash varchar(16) PRIMARY KEY, - math_outputhash varchar(16) NOT NULL, - math_html_conservativeness smallint NOT NULL, - math_html text, - math_mathml text -); - -CREATE TABLE objectcache ( - keyname varchar(255) PRIMARY KEY, - value text, - exptime timestamp without time zone -); -CREATE INDEX oc_exptime ON objectcache (exptime); - -CREATE TABLE archive ( - ar_namespace smallint NOT NULL, - ar_title varchar(255) NOT NULL, - ar_text text NOT NULL, - ar_comment text NOT NULL, - ar_user integer NOT NULL, - ar_user_text varchar(255) NOT NULL, - ar_timestamp timestamp without time zone NOT NULL, - ar_minor_edit smallint NOT NULL, - ar_flags text NOT NULL -); - -CREATE TABLE recentchanges ( - rc_id serial PRIMARY KEY, - rc_timestamp timestamp without time zone NOT NULL, - rc_cur_time timestamp without time zone NOT NULL, - rc_user integer NOT NULL, - rc_user_text varchar(255) NOT NULL, - rc_namespace smallint NOT NULL, - rc_title varchar(255) NOT NULL, - rc_comment text NOT NULL, - rc_minor smallint NOT NULL, - rc_bot smallint NOT NULL, - rc_new smallint NOT NULL, - rc_cur_id integer NOT NULL, - rc_this_oldid integer NOT NULL, - rc_last_oldid integer NOT NULL, - rc_type smallint NOT NULL, - rc_moved_to_ns smallint, - rc_moved_to_title varchar, - rc_ip inet, - rc_patrolled smallint -); -CREATE INDEX rc_ip ON recentchanges (rc_ip); -CREATE INDEX rc_new_name_ts_idx ON recentchanges (rc_new, rc_namespace, rc_timestamp); -CREATE INDEX rc_cur_id_idx ON recentchanges (rc_cur_id); - -CREATE TABLE site_stats ( - ss_row_id serial PRIMARY KEY, - ss_total_views bigint NOT NULL, - ss_total_edits bigint NOT NULL, - ss_good_articles bigint NOT NULL -); - -CREATE TABLE oldimage ( - oi_name varchar(255) NOT NULL, [truncated at 1000 lines; 224 more skipped]
18 years, 11 months
1
0
0
0
[ion] 20769: - Fix new msvc compilation issues in win32k due to the fact some files weren't being compiled eariler.
by ion@svn.reactos.org
- Fix new msvc compilation issues in win32k due to the fact some files weren't being compiled eariler. - Add Process access types to NDK and hide them from DDK. Modified: trunk/reactos/include/ndk/pstypes.h Modified: trunk/reactos/subsys/win32k/ntuser/window.c Modified: trunk/reactos/w32api/include/winnt.h _____ Modified: trunk/reactos/include/ndk/pstypes.h --- trunk/reactos/include/ndk/pstypes.h 2006-01-10 21:36:42 UTC (rev 20768) +++ trunk/reactos/include/ndk/pstypes.h 2006-01-10 22:25:21 UTC (rev 20769) @@ -107,8 +107,26 @@ #define PROCESS_PRIORITY_NORMAL 8 #define PROCESS_PRIORITY_NORMAL_FOREGROUND 9 -#if 0 // +// Process Access Types +// +#ifndef NTOS_MODE_USER +#define PROCESS_TERMINATE 0x0001 +#define PROCESS_CREATE_THREAD 0x0002 +#define PROCESS_SET_SESSIONID 0x0004 +#define PROCESS_VM_OPERATION 0x0008 +#define PROCESS_VM_READ 0x0010 +#define PROCESS_VM_WRITE 0x0020 +#define PROCESS_CREATE_PROCESS 0x0080 +#define PROCESS_SET_QUOTA 0x0100 +#define PROCESS_SET_INFORMATION 0x0200 +#define PROCESS_QUERY_INFORMATION 0x0400 +#define PROCESS_SUSPEND_RESUME 0x0800 +#define PROCESS_QUERY_LIMITED_INFORMATION 0x1000 +#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xFFFF) + + +// // Job Access Types // #define JOB_OBJECT_ASSIGN_PROCESS 0x1 _____ Modified: trunk/reactos/subsys/win32k/ntuser/window.c --- trunk/reactos/subsys/win32k/ntuser/window.c 2006-01-10 21:36:42 UTC (rev 20768) +++ trunk/reactos/subsys/win32k/ntuser/window.c 2006-01-10 22:25:21 UTC (rev 20769) @@ -2940,6 +2940,7 @@ PWINDOW_OBJECT WndShell; DECLARE_RETURN(BOOL); USER_REFERENCE_ENTRY Ref; + NTSTATUS Status; DPRINT("Enter NtUserSetShellWindowEx\n"); UserEnterExclusive(); @@ -2949,7 +2950,7 @@ RETURN(FALSE); } - NTSTATUS Status = IntValidateWindowStationHandle(PsGetCurrentProcess()->Win32WindowStation , + Status = IntValidateWindowStationHandle(PsGetCurrentProcess()->Win32WindowStation , KernelMode, 0, &WinStaObject); @@ -4407,11 +4408,11 @@ NtUserDereferenceWndProcHandle(WNDPROC wpHandle, WndProcHandle *Data) { DECLARE_RETURN(DWORD); + WndProcHandle Entry; DPRINT("Enter NtUserDereferenceWndProcHandle\n"); UserEnterShared(); - WndProcHandle Entry; if (((DWORD)wpHandle & 0xFFFF0000) == 0xFFFF0000) { Entry = WndProcHandlesArray[(DWORD)wpHandle & 0x0000FFFF]; _____ Modified: trunk/reactos/w32api/include/winnt.h --- trunk/reactos/w32api/include/winnt.h 2006-01-10 21:36:42 UTC (rev 20768) +++ trunk/reactos/w32api/include/winnt.h 2006-01-10 22:25:21 UTC (rev 20769) @@ -435,19 +435,22 @@ #define MAILSLOT_NO_MESSAGE ((DWORD)-1) #define MAILSLOT_WAIT_FOREVER ((DWORD)-1) +/* FIXME: Oh how I wish, I wish the w32api DDK wouldn't include winnt.h... */ +#ifndef __NTDDK_H #define PROCESS_TERMINATE 1 #define PROCESS_CREATE_THREAD 2 #define PROCESS_SET_SESSIONID 4 #define PROCESS_VM_OPERATION 8 #define PROCESS_VM_READ 16 #define PROCESS_VM_WRITE 32 -#define PROCESS_DUP_HANDLE 64 #define PROCESS_CREATE_PROCESS 128 #define PROCESS_SET_QUOTA 256 #define PROCESS_SET_INFORMATION 512 #define PROCESS_QUERY_INFORMATION 1024 #define PROCESS_SUSPEND_RESUME 2048 #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0xFFF) +#endif +#define PROCESS_DUP_HANDLE 64 #define THREAD_TERMINATE 1 #define THREAD_SUSPEND_RESUME 2 #define THREAD_GET_CONTEXT 8 @@ -3197,6 +3200,8 @@ #define JOB_OBJECT_MSG_PROCESS_MEMORY_LIMIT 9 #define JOB_OBJECT_MSG_JOB_MEMORY_LIMIT 10 +/* FIXME: Oh how I wish, I wish the w32api DDK wouldn't include winnt.h... */ +#ifndef __NTDDK_H #define JOB_OBJECT_ASSIGN_PROCESS 1 #define JOB_OBJECT_SET_ATTRIBUTES 2 #define JOB_OBJECT_QUERY 4 @@ -3204,8 +3209,6 @@ #define JOB_OBJECT_SET_SECURITY_ATTRIBUTES 16 #define JOB_OBJECT_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|31) -/* FIXME: Oh how I wish, I wish the w32api DDK wouldn't include winnt.h... */ -#ifndef __NTDDK_H typedef enum _JOBOBJECTINFOCLASS { JobObjectBasicAccountingInformation = 1, JobObjectBasicLimitInformation,
18 years, 11 months
1
0
0
0
[ion] 20768: - Fix regression in Firefox installer by making KiWaitSatisfyAll a function instead of a macro.
by ion@svn.reactos.org
- Fix regression in Firefox installer by making KiWaitSatisfyAll a function instead of a macro. - Make KiCheckAleratbility a macro to simplify its code and callers, and also clearly explain what rules it obeys. Modified: trunk/reactos/include/ndk/ketypes.h Modified: trunk/reactos/include/ndk/umtypes.h Modified: trunk/reactos/include/reactos/debug.h Modified: trunk/reactos/ntoskrnl/include/internal/ke.h Modified: trunk/reactos/ntoskrnl/ke/kthread.c Modified: trunk/reactos/ntoskrnl/ke/wait.c _____ Modified: trunk/reactos/include/ndk/ketypes.h --- trunk/reactos/include/ndk/ketypes.h 2006-01-10 20:50:21 UTC (rev 20767) +++ trunk/reactos/include/ndk/ketypes.h 2006-01-10 21:36:42 UTC (rev 20768) @@ -40,6 +40,16 @@ // #define SSDT_MAX_ENTRIES 4 +// +// Maximum number of times a thread can be suspended +// +#define MAXIMUM_SUSPEND_COUNT 0x7F + +// +// Dispatcher Priority increments +// +#define THREAD_ALERT_INCREMENT 2 + #ifdef NTOS_MODE_USER // _____ Modified: trunk/reactos/include/ndk/umtypes.h --- trunk/reactos/include/ndk/umtypes.h 2006-01-10 20:50:21 UTC (rev 20767) +++ trunk/reactos/include/ndk/umtypes.h 2006-01-10 21:36:42 UTC (rev 20768) @@ -34,16 +34,16 @@ // #ifndef _MANAGED #if defined(_M_IX86) -#define FASTCALL _fastcall +#define FASTCALL _fastcall #else #define FASTCALL #endif #else -#define FASTCALL NTAPI +#define FASTCALL NTAPI #endif #if !defined(_M_CEE_PURE) -#define NTAPI_INLINE NTAPI +#define NTAPI_INLINE NTAPI #else #define NTAPI_INLINE #endif @@ -66,25 +66,32 @@ // // Native API Return Value Macros // -#define NT_SUCCESS(Status) (((NTSTATUS)(Status)) >= 0) -#define NT_INFORMATION(Status) ((((ULONG)(Status)) >> 30) == 1) -#define NT_WARNING(Status) ((((ULONG)(Status)) >> 30) == 2) -#define NT_ERROR(Status) ((((ULONG)(Status)) >> 30) == 3) +#define NT_SUCCESS(Status) (((NTSTATUS)(Status)) >= 0) +#define NT_INFORMATION(Status) ((((ULONG)(Status)) >> 30) == 1) +#define NT_WARNING(Status) ((((ULONG)(Status)) >> 30) == 2) +#define NT_ERROR(Status) ((((ULONG)(Status)) >> 30) == 3) // // Limits // -#define MINCHAR 0x80 -#define MAXCHAR 0x7f -#define MINSHORT 0x8000 -#define MAXSHORT 0x7fff -#define MINLONG 0x80000000 -#define MAXLONG 0x7fffffff -#define MAXUCHAR 0xff -#define MAXUSHORT 0xffff -#define MAXULONG 0xffffffff +#define MINCHAR 0x80 +#define MAXCHAR 0x7f +#define MINSHORT 0x8000 +#define MAXSHORT 0x7fff +#define MINLONG 0x80000000 +#define MAXLONG 0x7fffffff +#define MAXUCHAR 0xff +#define MAXUSHORT 0xffff +#define MAXULONG 0xffffffff // +// CSR Macros +// +#define CSR_MAKE_OPCODE(s,m) ((s) << 16) | (m) +#define CSR_API_ID_FROM_OPCODE(n) ((ULONG)((USHORT)(n))) +#define CSR_SERVER_ID_FROM_OPCODE(n) (ULONG)((n) >> 16) + +// // Basic Types that aren't defined in User-Mode Headers // typedef CONST int CINT; _____ Modified: trunk/reactos/include/reactos/debug.h --- trunk/reactos/include/reactos/debug.h 2006-01-10 20:50:21 UTC (rev 20767) +++ trunk/reactos/include/reactos/debug.h 2006-01-10 21:36:42 UTC (rev 20768) @@ -22,7 +22,7 @@ #endif /* Define DbgPrint/RtlAssert unless the NDK is used */ -#if !defined(_NTNDK_) && (!defined(_NTDDK_) || !defined(__NTDDK_H)) +#if !defined(_RTLFUNCS_H) && (!defined(_NTDDK_) || !defined(__NTDDK_H)) /* Make sure we have basic types (some people include us *before* SDK... */ #if defined(_NTDEF_) || (defined _WINDEF_) || (defined _WINDEF_H) @@ -100,17 +100,8 @@ #else /* On non-debug builds, we never show these */ - #ifdef _MSC_VER - static __inline void DPRINT1 ( const char* fmt, ... ) - { - } - static __inline void DPRINT ( const char* fmt, ... ) - { - } - #else - #define DPRINT1(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0) - #define DPRINT(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0) - #endif + #define DPRINT1(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0) + #define DPRINT(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0) #define CHECKPOINT1 #define CHECKPOINT _____ Modified: trunk/reactos/ntoskrnl/include/internal/ke.h --- trunk/reactos/ntoskrnl/include/internal/ke.h 2006-01-10 20:50:21 UTC (rev 20767) +++ trunk/reactos/ntoskrnl/include/internal/ke.h 2006-01-10 21:36:42 UTC (rev 20768) @@ -169,27 +169,6 @@ } \ } -/* The following macro satisfies multiple objects in a wait state */ -#define KiSatisifyMultipleObjectWaits(FirstBlock) \ -{ \ - PKWAIT_BLOCK WaitBlock = FirstBlock; \ - PKTHREAD WaitThread = WaitBlock->Thread; \ - \ - /* Loop through all the Wait Blocks, and wake each Object */ \ - do \ - { \ - /* Make sure it hasn't timed out */ \ - if (WaitBlock->WaitKey != STATUS_TIMEOUT) \ - { \ - /* Wake the Object */ \ - KiSatisfyObjectWait((PKMUTANT)WaitBlock->Object, WaitThread); \ - } \ - \ - /* Move to the next block */ \ - WaitBlock = WaitBlock->NextWaitBlock; \ - } while (WaitBlock != FirstBlock); \ -} - extern KSPIN_LOCK DispatcherDatabaseLock; #define KeEnterCriticalRegion() \ @@ -215,6 +194,12 @@ DbgPrint("KeBugCheckWithTf at %s:%i\n",__FILE__,__LINE__), \ KeBugCheckWithTf(a,b,c,d,e,f) +/* Tells us if the Timer or Event is a Syncronization or Notification Object */ +#define TIMER_OR_EVENT_TYPE 0x7L + +/* One of the Reserved Wait Blocks, this one is for the Thread's Timer */ +#define TIMER_WAIT_BLOCK 0x3L + /* INTERNAL KERNEL FUNCTIONS ************************************************/ /* threadsch.c ********************************************************************/ _____ Modified: trunk/reactos/ntoskrnl/ke/kthread.c --- trunk/reactos/ntoskrnl/ke/kthread.c 2006-01-10 20:50:21 UTC (rev 20767) +++ trunk/reactos/ntoskrnl/ke/kthread.c 2006-01-10 21:36:42 UTC (rev 20768) @@ -14,14 +14,8 @@ #define NDEBUG #include <internal/debug.h> -/* FIXME: NDK */ -#define MAXIMUM_SUSPEND_COUNT 0x7F -#define THREAD_ALERT_INCREMENT 2 - extern EX_WORK_QUEUE ExWorkerQueue[MaximumWorkQueue]; -#define TIMER_WAIT_BLOCK 0x3L - /* * PURPOSE: List of threads associated with each priority level */ _____ Modified: trunk/reactos/ntoskrnl/ke/wait.c --- trunk/reactos/ntoskrnl/ke/wait.c 2006-01-10 20:50:21 UTC (rev 20767) +++ trunk/reactos/ntoskrnl/ke/wait.c 2006-01-10 21:36:42 UTC (rev 20768) @@ -18,71 +18,70 @@ KSPIN_LOCK DispatcherDatabaseLock; -/* Tells us if the Timer or Event is a Syncronization or Notification Object */ -#define TIMER_OR_EVENT_TYPE 0x7L +/* PRIVATE FUNCTIONS *********************************************************/ -/* One of the Reserved Wait Blocks, this one is for the Thread's Timer */ -#define TIMER_WAIT_BLOCK 0x3L +/* + * Rules for checking alertability: + * - For Alertable waits ONLY: + * * We don't wait and return STATUS_ALERTED if the thread is alerted + * in EITHER the specified wait mode OR in Kernel Mode. + * - For BOTH Alertable AND Non-Alertable waits: + * * We don't want and return STATUS_USER_APC if the User Mode APC list + * is not empty AND the wait mode is User Mode. + */ +#define KiCheckAlertability() \ + if (Alertable) \ + { \ + if (CurrentThread->Alerted[(int)WaitMode]) \ + { \ + CurrentThread->Alerted[(int)WaitMode] = FALSE; \ + WaitStatus = STATUS_ALERTED; \ + break; \ + } \ + else if ((WaitMode != KernelMode) && \ + (!IsListEmpty(&CurrentThread->ApcState.ApcListHead[UserMode])))\ + { \ + CurrentThread->ApcState.UserApcPending = TRUE; \ + WaitStatus = STATUS_USER_APC; \ + break; \ + } \ + else if (CurrentThread->Alerted[KernelMode]) \ + { \ + CurrentThread->Alerted[KernelMode] = FALSE; \ + WaitStatus = STATUS_ALERTED; \ + break; \ + } \ + } \ + else if ((WaitMode != KernelMode) && \ + (CurrentThread->ApcState.UserApcPending)) \ + { \ + WaitStatus = STATUS_USER_APC; \ + break; \ + } \ -/* FUNCTIONS *****************************************************************/ +/* PUBLIC FUNCTIONS **********************************************************/ -BOOLEAN -__inline +VOID FASTCALL -KiCheckAlertability(BOOLEAN Alertable, - PKTHREAD Thread, - KPROCESSOR_MODE WaitMode, - PNTSTATUS Status) +KiWaitSatisfyAll(PKWAIT_BLOCK FirstBlock) { - /* - * At this point, we have to do a wait, so make sure we can make - * the thread Alertable if requested. - */ - if (Alertable) + PKWAIT_BLOCK WaitBlock = FirstBlock; + PKTHREAD WaitThread = WaitBlock->Thread; + + /* Loop through all the Wait Blocks, and wake each Object */ + do { - /* If the Thread is Alerted, set the Wait Status accordingly */ - if (Thread->Alerted[(int)WaitMode]) + /* Make sure it hasn't timed out */ + if (WaitBlock->WaitKey != STATUS_TIMEOUT) { - Thread->Alerted[(int)WaitMode] = FALSE; - DPRINT("Thread was Alerted in the specified Mode\n"); - *Status = STATUS_ALERTED; - return TRUE; + /* Wake the Object */ + KiSatisfyObjectWait((PKMUTANT)WaitBlock->Object, WaitThread); } - else if ((WaitMode != KernelMode) && - (!IsListEmpty(&Thread->ApcState.ApcListHead[UserMode]))) - { - /* If there are User APCs Pending, then we can't really be alertable */ - DPRINT("APCs are Pending\n"); - Thread->ApcState.UserApcPending = TRUE; - *Status = STATUS_USER_APC; - return TRUE; - } - else if (Thread->Alerted[KernelMode]) - { - /* - * The thread is not alerted in the mode given, but it is alerted - * in kernel-mode. - */ - Thread->Alerted[KernelMode] = FALSE; - DPRINT("Thread was Alerted in Kernel-Mode\n"); - *Status = STATUS_ALERTED; - return TRUE; - } - } - else if ((WaitMode != KernelMode) && - (Thread->ApcState.UserApcPending)) - { - /* - * If there are User APCs Pending and we are waiting in usermode, - * then we must notify the caller - */ - DPRINT("APCs are Pending\n"); - *Status = STATUS_USER_APC; - return TRUE; - } - /* Stay in the loop */ - return FALSE; + /* Move to the next block */ + WaitBlock = WaitBlock->NextWaitBlock; + } + while (WaitBlock != FirstBlock); } /* @@ -137,8 +136,8 @@ goto SkipWait; } - /* Chceck if we can do an alertable wait, if requested */ - if (KiCheckAlertability(Alertable, CurrentThread, WaitMode, &WaitStatus)) break; + /* Check if we can do an alertable wait, if requested */ + KiCheckAlertability(); /* Set status */ CurrentThread->WaitStatus = STATUS_WAIT_0; @@ -311,7 +310,7 @@ WaitBlock->NextWaitBlock = WaitBlock; /* Make sure we can satisfy the Alertable request */ - if (KiCheckAlertability(Alertable, CurrentThread, WaitMode, &WaitStatus)) break; + KiCheckAlertability(); /* Enable the Timeout Timer if there was any specified */ if (Timeout) @@ -574,13 +573,13 @@ WaitBlock = CurrentThread->WaitBlockList; /* Satisfy their Waits and return to the caller */ - KiSatisifyMultipleObjectWaits(WaitBlock); + KiWaitSatisfyAll(WaitBlock); WaitStatus = CurrentThread->WaitStatus; goto DontWait; } /* Make sure we can satisfy the Alertable request */ - if (KiCheckAlertability(Alertable, CurrentThread, WaitMode, &WaitStatus)) break; + KiCheckAlertability(); /* Enable the Timeout Timer if there was any specified */ if (Timeout) @@ -754,7 +753,7 @@ /* All the objects are signaled, we can satisfy */ DPRINT("Satisfiying a Wait All\n"); WaitEntry = WaitEntry->Blink; - KiSatisifyMultipleObjectWaits(CurrentWaitBlock); + KiWaitSatisfyAll(CurrentWaitBlock); } /* All waits satisfied, unwait the thread */
18 years, 11 months
1
0
0
0
[cwittich] 20767: another DIB_32BPP_StretchBlt fix (patch by GreatLord)
by cwittich@svn.reactos.org
another DIB_32BPP_StretchBlt fix (patch by GreatLord) Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c _____ Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c --- trunk/reactos/subsys/win32k/dib/dib32bpp.c 2006-01-10 20:45:27 UTC (rev 20766) +++ trunk/reactos/subsys/win32k/dib/dib32bpp.c 2006-01-10 20:50:21 UTC (rev 20767) @@ -632,7 +632,7 @@ for (DesX=0; DesX<DesSizeX; DesX++, DestBits++) { sx = ((DesX * SrcSizeX) / DesSizeX) + SourceRect->left; - color = DIB_32BPP_GetPixel(SourceSurf, sx, sy); + color = DIB_8BPP_GetPixel(SourceSurf, sx, sy); *DestBits = XLATEOBJ_iXlate(ColorTranslation, color); } DestBits = (PULONG)((ULONG_PTR)DestBits + DifflDelta);
18 years, 11 months
1
0
0
0
[cwittich] 20766: fixed DIB_32BPP_StretchBlt
by cwittich@svn.reactos.org
fixed DIB_32BPP_StretchBlt Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c _____ Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c --- trunk/reactos/subsys/win32k/dib/dib32bpp.c 2006-01-10 19:41:07 UTC (rev 20765) +++ trunk/reactos/subsys/win32k/dib/dib32bpp.c 2006-01-10 20:45:27 UTC (rev 20766) @@ -568,7 +568,7 @@ DestBits = (PULONG)((PBYTE)DestSurf->pvScan0 + (DestRect->left << 2) + DestRect->top * DestSurf->lDelta); - DifflDelta = DestSurf->lDelta - (DesSizeX << 1); + DifflDelta = DestSurf->lDelta - (DesSizeX << 2); for (DesY=0; DesY<DesSizeY; DesY++) { @@ -599,7 +599,7 @@ DestBits = (PULONG)((PBYTE)DestSurf->pvScan0 + (DestRect->left << 2) + DestRect->top * DestSurf->lDelta); - DifflDelta = DestSurf->lDelta - (DesSizeX << 1); + DifflDelta = DestSurf->lDelta - (DesSizeX << 2); for (DesY=0; DesY<DesSizeY; DesY++) { @@ -623,7 +623,7 @@ DestBits = (PULONG)((PBYTE)DestSurf->pvScan0 + (DestRect->left << 2) + DestRect->top * DestSurf->lDelta); - DifflDelta = DestSurf->lDelta - (DesSizeX << 1); + DifflDelta = DestSurf->lDelta - (DesSizeX << 2); for (DesY=0; DesY<DesSizeY; DesY++) { @@ -646,7 +646,7 @@ DestBits = (PULONG)((PBYTE)DestSurf->pvScan0 + (DestRect->left << 2) + DestRect->top * DestSurf->lDelta); - DifflDelta = DestSurf->lDelta - (DesSizeX << 1); + DifflDelta = DestSurf->lDelta - (DesSizeX << 2); for (DesY=0; DesY<DesSizeY; DesY++) { @@ -669,7 +669,7 @@ DestBits = (PULONG)((PBYTE)DestSurf->pvScan0 + (DestRect->left << 2) + DestRect->top * DestSurf->lDelta); - DifflDelta = DestSurf->lDelta - (DesSizeX << 1); + DifflDelta = DestSurf->lDelta - (DesSizeX << 2); for (DesY=0; DesY<DesSizeY; DesY++) {
18 years, 11 months
1
0
0
0
[cwittich] 20765: added msvc_clean and msvc_clean_all (patch by Brezenbak)
by cwittich@svn.reactos.org
added msvc_clean and msvc_clean_all (patch by Brezenbak) Modified: trunk/reactos/Makefile Modified: trunk/reactos/tools/rbuild/backend/msvc/msvc.cpp Modified: trunk/reactos/tools/rbuild/backend/msvc/msvc.h Modified: trunk/reactos/tools/rbuild/backend/msvc/vcprojmaker.cpp _____ Modified: trunk/reactos/Makefile --- trunk/reactos/Makefile 2006-01-10 19:18:28 UTC (rev 20764) +++ trunk/reactos/Makefile 2006-01-10 19:41:07 UTC (rev 20765) @@ -396,6 +396,39 @@ $(ECHO_RBUILD) $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -vs8.00 msvc +.PHONY: msvc6 +msvc6_clean: $(RBUILD_TARGET) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs6.00 msvc + +.PHONY: msvc7 +msvc7_clean: $(RBUILD_TARGET) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs7.00 msvc + +.PHONY: msvc71 +msvc71_clean: $(RBUILD_TARGET) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs7.10 msvc + +.PHONY: msvc8 +msvc8_clean: $(RBUILD_TARGET) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs8.00 msvc + +.PHONY: msvc_clean +msvc_clean: $(RBUILD_TARGET) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c msvc + +.PHONY: msvc_clean_all +msvc_clean_all: $(RBUILD_TARGET) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs6.00 msvc + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs7.00 msvc + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs7.10 msvc + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -c -vs8.10 msvc + .PHONY: makefile_auto_clean makefile_auto_clean: -@$(rm) $(ROS_AUTOMAKE) $(PREAUTO) 2>$(NUL) @@ -406,4 +439,4 @@ .PHONY: depends depends: @-$(rm) makefile.auto - @$(MAKE) $(filter-out depends, $(MAKECMDGOALS)) + @$(MAKE) $(filter-out depends, $(MAKECMDGOALS)) \ No newline at end of file _____ Modified: trunk/reactos/tools/rbuild/backend/msvc/msvc.cpp --- trunk/reactos/tools/rbuild/backend/msvc/msvc.cpp 2006-01-10 19:18:28 UTC (rev 20764) +++ trunk/reactos/tools/rbuild/backend/msvc/msvc.cpp 2006-01-10 19:41:07 UTC (rev 20765) @@ -25,11 +25,14 @@ #include <iostream> #include <fstream> #include <string> +#include <vector> #include "msvc.h" #include "../mingw/mingw.h" -using namespace std; +using std::string; +using std::vector; +using std::ifstream; static class MSVCFactory : public Backend::Factory { @@ -53,6 +56,11 @@ void MSVCBackend::Process() { + if ( configuration.CleanAsYouGo ) { + _clean_project_files(); + return; + } + string filename_sln ( ProjectNode.name ); //string filename_rules = "gccasm.rules"; @@ -206,6 +214,46 @@ } std::string +MSVCBackend::OptFileName ( const Module& module ) const +{ + return DosSeparator( + ReplaceExtension ( module.GetPath(), "_" + _get_vc_dir() + "_auto.opt" ) + ); +} + +std::string +MSVCBackend::SuoFileName ( const Module& module ) const +{ + return DosSeparator( + ReplaceExtension ( module.GetPath(), "_" + _get_vc_dir() + "_auto.suo" ) + ); +} + +std::string +MSVCBackend::DswFileName ( const Module& module ) const +{ + return DosSeparator( + ReplaceExtension ( module.GetPath(), "_auto.dsw" ) + ); +} + +std::string +MSVCBackend::SlnFileName ( const Module& module ) const +{ + return DosSeparator( + ReplaceExtension ( module.GetPath(), "_" + _get_vc_dir() + "_auto.sln" ) + ); +} + +std::string +MSVCBackend::NcbFileName ( const Module& module ) const +{ + return DosSeparator( + ReplaceExtension ( module.GetPath(), "_" + _get_vc_dir() + "_auto.ncb" ) + ); +} + +std::string MSVCBackend::DspFileName ( const Module& module ) const { return DosSeparator( @@ -217,6 +265,112 @@ MSVCBackend::VcprojFileName ( const Module& module ) const { return DosSeparator( - ReplaceExtension ( module.GetPath(), "_auto.vcproj" ) - ); + ReplaceExtension ( module.GetPath(), "_" + _get_vc_dir() + "_auto.vcproj" ) + ); } + +std::string MSVCBackend::_get_vc_dir ( void ) const +{ + if ( configuration.VSProjectVersion == "6.00" ) + return "vc6"; + else if ( configuration.VSProjectVersion == "7.00" ) + return "vc70"; + else if ( configuration.VSProjectVersion == "7.10" ) + return "vc71"; + else /* must be VS2005 */ + return "vc8"; + + +} + +void +MSVCBackend::_get_object_files ( const Module& module, vector<string>& out) const +{ + string basepath = module.GetBasePath (); + string vcdir = _get_vc_dir (); + size_t i; + string intenv = Environment::GetIntermediatePath () + "\\" + basepath + "\\" + vcdir + "\\"; + string outenv = Environment::GetOutputPath () + "\\" + basepath + "\\" + vcdir + "\\"; + string dbg = vcdir.substr ( 0, 3 ); + + vector<string> cfgs; + cfgs.push_back ( intenv + "Debug" ); + cfgs.push_back ( intenv + "Release" ); + cfgs.push_back ( intenv + "Speed" ); + cfgs.push_back ( outenv + "Debug" ); + cfgs.push_back ( outenv + "Release" ); + cfgs.push_back ( outenv + "Speed" ); + + + vector<const IfableData*> ifs_list; + ifs_list.push_back ( &module.project.non_if_data ); + ifs_list.push_back ( &module.non_if_data ); + while ( ifs_list.size () ) + { + const IfableData& data = *ifs_list.back(); + ifs_list.pop_back(); + const vector<File*>& files = data.files; + for ( i = 0; i < files.size (); i++ ) + { + string file = files[i]->name; + string::size_type pos = file.find_last_of ("\\"); + if ( pos != string::npos ) + file.erase ( 0, pos+1 ); + if ( !stricmp ( Right(file,3).c_str(), ".rc" ) ) + file = ReplaceExtension ( file, ".res" ); + else + file = ReplaceExtension ( file, ".obj" ); + for ( size_t j = 0; j < cfgs.size () / 2; j++ ) + out.push_back ( cfgs[j] + "\\" + file ); + } + + } + //common files in intermediate dir + for ( i = 0; i < cfgs.size () / 2; i++) + { + out.push_back ( cfgs[i] + "\\" + "BuildLog.htm" ); + out.push_back ( cfgs[i] + "\\" + dbg + "0.pdb" ); + out.push_back ( cfgs[i] + "\\" + dbg + "0.idb" ); + out.push_back ( cfgs[i] + "\\" + module.name + ".pch" ); + } + //files in the output dir + for ( i = cfgs.size () / 2; i < cfgs.size (); i++ ) + { + out.push_back ( cfgs[i] + "\\" + module.GetTargetName () ); + out.push_back ( cfgs[i] + "\\" + module.name + ".pdb" ); + out.push_back ( cfgs[i] + "\\" + module.name + ".lib" ); + out.push_back ( cfgs[i] + "\\" + module.name + ".exp" ); + out.push_back ( cfgs[i] + "\\" + module.name + ".ilk" ); + out.push_back ( cfgs[i] + "\\" + "(InputName).obj" ); //MSVC2003 build bug + } +} + +void +MSVCBackend::_clean_project_files ( void ) +{ + for ( size_t i = 0; i < ProjectNode.modules.size(); i++ ) + { + Module& module = *ProjectNode.modules[i]; + vector<string> out; + printf("Cleaning project %s %s %s\n", module.name.c_str (), module.GetBasePath ().c_str (), NcbFileName ( module ).c_str () ); + + string basepath = module.GetBasePath (); + remove ( NcbFileName ( module ).c_str () ); + remove ( DspFileName ( module ).c_str () ); + remove ( DswFileName ( module ).c_str () ); + remove ( OptFileName ( module ).c_str () ); + remove ( SlnFileName ( module ).c_str () ); + remove ( SuoFileName ( module ).c_str () ); + remove ( VcprojFileName ( module ).c_str () ); + + _get_object_files ( module, out ); + for ( size_t j = 0; j < out.size (); j++) + remove ( out[j].c_str () ); + } + string filename_sln = ProjectNode.name + ".sln"; + string filename_dsw = ProjectNode.name + ".dsw"; + + remove ( filename_sln.c_str () ); + remove ( filename_dsw.c_str () ); +} + _____ Modified: trunk/reactos/tools/rbuild/backend/msvc/msvc.h --- trunk/reactos/tools/rbuild/backend/msvc/msvc.h 2006-01-10 19:18:28 UTC (rev 20764) +++ trunk/reactos/tools/rbuild/backend/msvc/msvc.h 2006-01-10 19:41:07 UTC (rev 20765) @@ -55,7 +55,14 @@ std::string DspFileName ( const Module& module ) const; std::string VcprojFileName ( const Module& module ) const; - + std::string DswFileName ( const Module& module ) const; + std::string SlnFileName ( const Module& module ) const; + std::string OptFileName ( const Module& module ) const; + std::string SuoFileName ( const Module& module ) const; + std::string NcbFileName ( const Module& module ) const; + + + std::vector<FileUnit> m_fileUnits; std::vector<std::string> m_folders; @@ -87,6 +94,8 @@ const std::string &find_str, const std::string &replace_str); + std::string _get_vc_dir ( void ) const; + void _generate_vcproj ( const Module& module ); void _generate_sln_header ( FILE* OUT ); @@ -103,7 +112,8 @@ void _generate_sln_configurations ( FILE* OUT, std::string vcproj_guid ); - + void _clean_project_files ( void ); + void _get_object_files ( const Module& module, std::vector<std::string>& out ) const; }; #endif // __MSVC_H__ _____ Modified: trunk/reactos/tools/rbuild/backend/msvc/vcprojmaker.cpp --- trunk/reactos/tools/rbuild/backend/msvc/vcprojmaker.cpp 2006-01-10 19:18:28 UTC (rev 20764) +++ trunk/reactos/tools/rbuild/backend/msvc/vcprojmaker.cpp 2006-01-10 19:41:07 UTC (rev 20765) @@ -252,8 +252,8 @@ fprintf ( OUT, "\t\t<Configuration\r\n" ); fprintf ( OUT, "\t\t\tName=\"%s|Win32\"\r\n", cfg.c_str() ); - fprintf ( OUT, "\t\t\tOutputDirectory=\"%s\\%s\\%s\"\r\n", outdir.c_str (), module.GetBasePath ().c_str (), cfg.c_str() ); - fprintf ( OUT, "\t\t\tIntermediateDirectory=\"%s\\%s\\%s\"\r\n", intdir.c_str (), module.GetBasePath ().c_str (), cfg.c_str() ); + fprintf ( OUT, "\t\t\tOutputDirectory=\"%s\\%s\\%s\\%s\"\r\n", outdir.c_str (), module.GetBasePath ().c_str (), _get_vc_dir().c_str (), cfg.c_str() ); + fprintf ( OUT, "\t\t\tIntermediateDirectory=\"%s\\%s\\%s\\%s\"\r\n", intdir.c_str (), module.GetBasePath ().c_str (), _get_vc_dir().c_str (), cfg.c_str() ); fprintf ( OUT, "\t\t\tConfigurationType=\"%d\"\r\n", exe ? 1 : dll ? 2 : lib ? 4 : -1 ); fprintf ( OUT, "\t\t\tCharacterSet=\"2\">\r\n" );
18 years, 11 months
1
0
0
0
[mf] 20764: ibrowser: display download progress in percent
by mf@svn.reactos.org
ibrowser: display download progress in percent Modified: trunk/reactos/subsys/system/ibrowser/mainframe.cpp Modified: trunk/reactos/subsys/system/ibrowser/webchild.h _____ Modified: trunk/reactos/subsys/system/ibrowser/mainframe.cpp --- trunk/reactos/subsys/system/ibrowser/mainframe.cpp 2006-01-10 18:01:11 UTC (rev 20763) +++ trunk/reactos/subsys/system/ibrowser/mainframe.cpp 2006-01-10 19:18:28 UTC (rev 20764) @@ -233,7 +233,7 @@ break; case PM_SETSTATUSTEXT: - SendMessage(_hstatusbar, SB_SETTEXT, 0, lparam); + SendMessage(_hstatusbar, SB_SETTEXT, wparam, lparam); break; case PM_URL_CHANGED: _____ Modified: trunk/reactos/subsys/system/ibrowser/webchild.h --- trunk/reactos/subsys/system/ibrowser/webchild.h 2006-01-10 18:01:11 UTC (rev 20763) +++ trunk/reactos/subsys/system/ibrowser/webchild.h 2006-01-10 19:18:28 UTC (rev 20764) @@ -951,6 +951,12 @@ void ProgressChange(long Progress, long ProgressMax) { + String txt; + + if (Progress>=0 && Progress<ProgressMax) + txt.printf(TEXT("%3d %%"), (int)(100.*Progress/ProgressMax+.5)); + + SendMessage(_hwndFrame, PM_SETSTATUSTEXT, 1, (LPARAM)txt.c_str()); } void WindowMove()
18 years, 11 months
1
0
0
0
← Newer
1
...
29
30
31
32
33
34
35
...
59
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Results per page:
10
25
50
100
200