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
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
March 2013
----- 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
14 participants
249 discussions
Start a n
N
ew thread
[akhaldi] 58601: [SHLWAPI_WINETEST] * Sync with Wine 1.5.26.
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sun Mar 24 12:36:17 2013 New Revision: 58601 URL:
http://svn.reactos.org/svn/reactos?rev=58601&view=rev
Log: [SHLWAPI_WINETEST] * Sync with Wine 1.5.26. Modified: trunk/rostests/winetests/shlwapi/assoc.c trunk/rostests/winetests/shlwapi/clist.c trunk/rostests/winetests/shlwapi/clsid.c trunk/rostests/winetests/shlwapi/generated.c trunk/rostests/winetests/shlwapi/istream.c trunk/rostests/winetests/shlwapi/ordinal.c trunk/rostests/winetests/shlwapi/path.c trunk/rostests/winetests/shlwapi/shreg.c trunk/rostests/winetests/shlwapi/string.c trunk/rostests/winetests/shlwapi/testlist.c trunk/rostests/winetests/shlwapi/thread.c trunk/rostests/winetests/shlwapi/url.c Modified: trunk/rostests/winetests/shlwapi/assoc.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/assoc.c…
============================================================================== --- trunk/rostests/winetests/shlwapi/assoc.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/assoc.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,11 +17,16 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdarg.h> - -#include "wine/test.h" -#include "shlwapi.h" -#include "shlguid.h" +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdarg.h> + +#include <wine/test.h> +#include <winreg.h> +#include <shlwapi.h> +#include <shlguid.h> #define expect(expected, got) ok ( expected == got, "Expected %d, got %d\n", expected, got) #define expect_hr(expected, got) ok ( expected == got, "Expected %08x, got %08x\n", expected, got) @@ -78,7 +83,8 @@ hr = pAssocQueryStringW(0, ASSOCSTR_FRIENDLYAPPNAME, dotBad, open, NULL, &len); ok(hr == E_FAIL || - hr == HRESULT_FROM_WIN32(ERROR_NO_ASSOCIATION), /* Win9x/WinMe/NT4/W2K/Vista/W2K8 */ + hr == HRESULT_FROM_WIN32(ERROR_NO_ASSOCIATION) /* Win9x/WinMe/NT4/W2K/Vista/W2K8 */ || + hr == HRESULT_FROM_WIN32(ERROR_NOT_FOUND), /* Win8 */ "Unexpected result : %08x\n", hr); hr = pAssocQueryStringW(0, ASSOCSTR_FRIENDLYAPPNAME, dotHtml, invalid, NULL, &len); @@ -133,7 +139,8 @@ hr = pAssocQueryStringW(0, ASSOCSTR_FRIENDLYAPPNAME, dotHtml, open, NULL, &len); ok(hr == S_FALSE || - hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), /* Win9x/NT4 */ + hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND) /* Win9x/NT4 */ || + hr == HRESULT_FROM_WIN32(ERROR_NOT_FOUND), /* Win8 */ "Unexpected result : %08x\n", hr); if (hr != S_FALSE) { Modified: trunk/rostests/winetests/shlwapi/clist.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/clist.c…
============================================================================== --- trunk/rostests/winetests/shlwapi/clist.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/clist.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,12 +17,16 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdarg.h> - -#include "wine/test.h" -#include "windef.h" -#include "winbase.h" -#include "objbase.h" +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdarg.h> + +#include <wine/test.h> +//#include "windef.h" +//#include "winbase.h" +#include <objbase.h> typedef struct tagSHLWAPI_CLIST { Modified: trunk/rostests/winetests/shlwapi/clsid.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/clsid.c…
============================================================================== --- trunk/rostests/winetests/shlwapi/clsid.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/clsid.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,17 +17,22 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdio.h> - -#include "wine/test.h" -#include "winbase.h" -#include "winerror.h" -#include "winnls.h" -#include "winuser.h" -#include "initguid.h" -#include "shlguid.h" -#include "shobjidl.h" -#include "olectl.h" +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdio.h> + +#include <wine/test.h> +//#include "winbase.h" +//#include "winerror.h" +//#include "winnls.h" +//#include "winuser.h" +#include <objbase.h> +#include <initguid.h> +#include <shlguid.h> +#include <shobjidl.h> +#include <olectl.h> DEFINE_GUID(GUID_NULL,0,0,0,0,0,0,0,0,0,0,0); Modified: trunk/rostests/winetests/shlwapi/generated.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/generat…
============================================================================== --- trunk/rostests/winetests/shlwapi/generated.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/generated.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -4,6 +4,10 @@ /* * Unit tests for data structure packing */ + +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H #define WINVER 0x0501 #define _WIN32_IE 0x0501 @@ -12,13 +16,13 @@ #define WINE_NOWINSOCK #include <stdarg.h> -#include "windef.h" -#include "winbase.h" -#include "wtypes.h" -#include "winreg.h" -#include "shlwapi.h" - -#include "wine/test.h" +#include <windef.h> +#include <winbase.h> +//#include "wtypes.h" +#include <winreg.h> +#include <shlwapi.h> + +#include <wine/test.h> /*********************************************************************** * Compatibility macros Modified: trunk/rostests/winetests/shlwapi/istream.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/istream…
============================================================================== --- trunk/rostests/winetests/shlwapi/istream.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/istream.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,16 +17,22 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + #define COBJMACROS -#include <stdarg.h> -#include <stdio.h> - -#include "wine/test.h" -#include "windef.h" -#include "winbase.h" -#include "objbase.h" -#include "shlwapi.h" +//#include <stdarg.h> +//#include <stdio.h> + +#include <wine/test.h> +//#include "windef.h" +//#include "winbase.h" +#include <winnls.h> +#include <winreg.h> +#include <objbase.h> +//#include "shlwapi.h" /* Function pointers for the SHCreateStreamOnFile functions */ Modified: trunk/rostests/winetests/shlwapi/ordinal.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/ordinal…
============================================================================== --- trunk/rostests/winetests/shlwapi/ordinal.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/ordinal.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,22 +17,28 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdio.h> +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdio.h> #define COBJMACROS #define CONST_VTABLE -#include "wine/test.h" -#include "winbase.h" -#include "winerror.h" -#include "winuser.h" -#include "ole2.h" -#include "oaidl.h" -#include "ocidl.h" -#include "mlang.h" -#include "shlwapi.h" -#include "docobj.h" -#include "shobjidl.h" -#include "shlobj.h" +#include <wine/test.h> +//#include "winbase.h" +#include <winreg.h> +#include <winnls.h> +//#include "winerror.h" +//#include "winuser.h" +#include <ole2.h> +//#include "oaidl.h" +//#include "ocidl.h" +//#include "mlang.h" +#include <shlwapi.h> +//#include "docobj.h" +#include <shobjidl.h> +//#include "shlobj.h" /* Function ptrs for ordinal calls */ static HMODULE hShlwapi; Modified: trunk/rostests/winetests/shlwapi/path.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/path.c?…
============================================================================== --- trunk/rostests/winetests/shlwapi/path.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/path.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,21 +17,27 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdarg.h> +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdarg.h> #include <stdio.h> -#include "wine/test.h" -#include "windef.h" -#include "winbase.h" -#include "winreg.h" -#include "shlwapi.h" -#include "wininet.h" +#include <wine/test.h> +//#include "windef.h" +//#include "winbase.h" +#include <winreg.h> +#include <winnls.h> +#include <shlwapi.h> +#include <wininet.h> static HRESULT (WINAPI *pPathIsValidCharA)(char,DWORD); static HRESULT (WINAPI *pPathIsValidCharW)(WCHAR,DWORD); static LPWSTR (WINAPI *pPathCombineW)(LPWSTR, LPCWSTR, LPCWSTR); static HRESULT (WINAPI *pPathCreateFromUrlA)(LPCSTR, LPSTR, LPDWORD, DWORD); static HRESULT (WINAPI *pPathCreateFromUrlW)(LPCWSTR, LPWSTR, LPDWORD, DWORD); +static HRESULT (WINAPI *pPathCreateFromUrlAlloc)(LPCWSTR, LPWSTR*, DWORD); static BOOL (WINAPI *pPathAppendA)(LPSTR, LPCSTR); /* ################ */ @@ -39,34 +45,88 @@ static const struct { const char *url; const char *path; - DWORD ret; + DWORD ret, todo; } TEST_PATHFROMURL[] = { - {"file:///c:/foo/ba%5Cr", "c:\\foo\\ba\\r", S_OK}, - {"file:///c:/foo/../ba%5Cr", "c:\\foo\\..\\ba\\r", S_OK}, - {"file:///host/c:/foo/bar", "\\host\\c:\\foo\\bar", S_OK}, - {"file://host/c:/foo/bar", "\\\\hostc:\\foo\\bar", S_OK}, - {"file://host/c:/foo/bar", "\\\\hostc:\\foo\\bar", S_OK}, - {"file:\\\\host\\c:\\foo\\bar", "\\\\hostc:\\foo\\bar", S_OK}, - {"file:\\\\host\\ca\\foo\\bar", "\\\\host\\ca\\foo\\bar", S_OK}, - {"file:\\\\host\\c|\\foo\\bar", "\\\\hostc|\\foo\\bar", S_OK}, - {"file:\\%5Chost\\c:\\foo\\bar", "\\\\host\\c:\\foo\\bar", S_OK}, - {"file:\\\\host\\cx:\\foo\\bar", "\\\\host\\cx:\\foo\\bar", S_OK}, - {"file://c:/foo/bar", "c:\\foo\\bar", S_OK}, - {"file://c:/d:/foo/bar", "c:\\d:\\foo\\bar", S_OK}, - {"file://c|/d|/foo/bar", "c:\\d|\\foo\\bar", S_OK}, - {"file://host/foo/bar", "\\\\host\\foo\\bar", S_OK}, - {"file:/foo/bar", "\\foo\\bar", S_OK}, - {"file:/foo/bar/", "\\foo\\bar\\", S_OK}, - {"file:foo/bar", "foo\\bar", S_OK}, - {"file:c:/foo/bar", "c:\\foo\\bar", S_OK}, - {"file:c|/foo/bar", "c:\\foo\\bar", S_OK}, - {"file:cx|/foo/bar", "cx|\\foo\\bar", S_OK}, - {"file:////c:/foo/bar", "c:\\foo\\bar", S_OK}, -/* {"file:////c:/foo/foo%20bar", "c:\\foo\\foo%20bar", S_OK},*/ - - {"c:\\foo\\bar", NULL, E_INVALIDARG}, - {"foo/bar", NULL, E_INVALIDARG}, - {"
http://foo/bar
", NULL, E_INVALIDARG}, + /* 0 leading slash */ + {"file:c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:c|/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:cx|/foo/bar", "cx|\\foo\\bar", S_OK, 0}, + {"file:c:foo/bar", "c:foo\\bar", S_OK, 0}, + {"file:c|foo/bar", "c:foo\\bar", S_OK, 0}, + {"file:c:/foo%20ba%2fr", "c:\\foo ba/r", S_OK, 0}, + {"file:foo%20ba%2fr", "foo ba/r", S_OK, 0}, + {"file:foo/bar/", "foo\\bar\\", S_OK, 0}, + + /* 1 leading (back)slash */ + {"file:/c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:\\c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:/c|/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:/cx|/foo/bar", "\\cx|\\foo\\bar", S_OK, 0}, + {"file:/c:foo/bar", "c:foo\\bar", S_OK, 0}, + {"file:/c|foo/bar", "c:foo\\bar", S_OK, 0}, + {"file:/c:/foo%20ba%2fr", "c:\\foo ba/r", S_OK, 0}, + {"file:/foo%20ba%2fr", "\\foo ba/r", S_OK, 0}, + {"file:/foo/bar/", "\\foo\\bar\\", S_OK, 0}, + + /* 2 leading (back)slashes */ + {"file://c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file://c:/d:/foo/bar", "c:\\d:\\foo\\bar", S_OK, 0}, + {"file://c|/d|/foo/bar", "c:\\d|\\foo\\bar", S_OK, 0}, + {"file://cx|/foo/bar", "\\\\cx|\\foo\\bar", S_OK, 0}, + {"file://c:foo/bar", "c:foo\\bar", S_OK, 0}, + {"file://c|foo/bar", "c:foo\\bar", S_OK, 0}, + {"file://c:/foo%20ba%2fr", "c:\\foo%20ba%2fr", S_OK, 0}, + {"file://c%3a/foo/../bar", "\\\\c:\\foo\\..\\bar", S_OK, 0}, + {"file://c%7c/foo/../bar", "\\\\c|\\foo\\..\\bar", S_OK, 0}, + {"file://foo%20ba%2fr", "\\\\foo ba/r", S_OK, 0}, + {"file://localhost/c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file://localhost/c:/foo%20ba%5Cr", "c:\\foo ba\\r", S_OK, 0}, + {"file://LocalHost/c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:\\\\localhost\\c:\\foo\\bar", "c:\\foo\\bar", S_OK, 0}, + {"file://incomplete", "\\\\incomplete", S_OK, 0}, + + /* 3 leading (back)slashes (omitting hostname) */ + {"file:///c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"File:///c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:///c:/foo%20ba%2fr", "c:\\foo ba/r", S_OK, 0}, + {"file:///foo%20ba%2fr", "\\foo ba/r", S_OK, 0}, + {"file:///foo/bar/", "\\foo\\bar\\", S_OK, 0}, + {"file:///localhost/c:/foo/bar", "\\localhost\\c:\\foo\\bar", S_OK, 0}, + + /* 4 leading (back)slashes */ + {"file:////c:/foo/bar", "c:\\foo\\bar", S_OK, 0}, + {"file:////c:/foo%20ba%2fr", "c:\\foo%20ba%2fr", S_OK, 0}, + {"file:////foo%20ba%2fr", "\\\\foo%20ba%2fr", S_OK, 0}, + + /* 5 and more leading (back)slashes */ + {"file://///c:/foo/bar", "\\\\c:\\foo\\bar", S_OK, 0}, + {"file://///c:/foo%20ba%2fr", "\\\\c:\\foo ba/r", S_OK, 0}, + {"file://///foo%20ba%2fr", "\\\\foo ba/r", S_OK, 0}, + {"file://////c:/foo/bar", "\\\\c:\\foo\\bar", S_OK, 0}, + + /* Leading (back)slashes cannot be escaped */ + {"file:%2f%2flocalhost%2fc:/foo/bar", "//localhost/c:\\foo\\bar", S_OK, 0}, + {"file:%5C%5Clocalhost%5Cc:/foo/bar", "\\\\localhost\\c:\\foo\\bar", S_OK, 0}, + + /* Hostname handling */ + {"file://l%6fcalhost/c:/foo/bar", "\\\\localhostc:\\foo\\bar", S_OK, 0}, + {"file://localhost:80/c:/foo/bar", "\\\\localhost:80c:\\foo\\bar", S_OK, 0}, + {"file://host/c:/foo/bar", "\\\\hostc:\\foo\\bar", S_OK, 0}, + {"file://host//c:/foo/bar", "\\\\host\\\\c:\\foo\\bar", S_OK, 0}, + {"file://host/\\c:/foo/bar", "\\\\host\\\\c:\\foo\\bar", S_OK, 0}, + {"file://host/c:foo/bar", "\\\\hostc:foo\\bar", S_OK, 0}, + {"file://host/foo/bar", "\\\\host\\foo\\bar", S_OK, 0}, + {"file:\\\\host\\c:\\foo\\bar", "\\\\hostc:\\foo\\bar", S_OK, 0}, + {"file:\\\\host\\ca\\foo\\bar", "\\\\host\\ca\\foo\\bar", S_OK, 0}, + {"file:\\\\host\\c|\\foo\\bar", "\\\\hostc|\\foo\\bar", S_OK, 0}, + {"file:\\%5Chost\\c:\\foo\\bar", "\\\\host\\c:\\foo\\bar", S_OK, 0}, + {"file:\\\\host\\cx:\\foo\\bar", "\\\\host\\cx:\\foo\\bar", S_OK, 0}, + {"file:///host/c:/foo/bar", "\\host\\c:\\foo\\bar", S_OK, 0}, + + /* Not file URLs */ + {"c:\\foo\\bar", NULL, E_INVALIDARG, 0}, + {"foo/bar", NULL, E_INVALIDARG, 0}, + {"
http://foo/bar
", NULL, E_INVALIDARG, 0}, }; @@ -128,7 +188,7 @@ { LPWSTR wszString = HeapAlloc(GetProcessHeap(), 0, (2*INTERNET_MAX_URL_LENGTH) * sizeof(WCHAR)); - MultiByteToWideChar(0, 0, szString, -1, wszString, INTERNET_MAX_URL_LENGTH); + MultiByteToWideChar(CP_ACP, 0, szString, -1, wszString, INTERNET_MAX_URL_LENGTH); return wszString; } @@ -203,44 +263,86 @@ { size_t i; char ret_path[INTERNET_MAX_URL_LENGTH]; - DWORD len, ret; + DWORD len, len2, ret; WCHAR ret_pathW[INTERNET_MAX_URL_LENGTH]; WCHAR *pathW, *urlW; - static const char url[] = "
http://www.winehq.org
"; if (!pPathCreateFromUrlA) { win_skip("PathCreateFromUrlA not found\n"); return; } - /* Check ret_path = NULL */ - len = sizeof(url); - ret = pPathCreateFromUrlA(url, NULL, &len, 0); - ok ( ret == E_INVALIDARG, "got 0x%08x expected E_INVALIDARG\n", ret); - + /* Won't say how much is needed without a buffer */ + len = 0xdeca; + ret = pPathCreateFromUrlA("file://foo", NULL, &len, 0); + ok(ret == E_INVALIDARG, "got 0x%08x expected E_INVALIDARG\n", ret); + ok(len == 0xdeca, "got %x expected 0xdeca\n", len); + + /* Test the decoding itself */ for(i = 0; i < sizeof(TEST_PATHFROMURL) / sizeof(TEST_PATHFROMURL[0]); i++) { len = INTERNET_MAX_URL_LENGTH; ret = pPathCreateFromUrlA(TEST_PATHFROMURL[i].url, ret_path, &len, 0); - ok(ret == TEST_PATHFROMURL[i].ret, "ret %08x from url %s\n", ret, TEST_PATHFROMURL[i].url); - if(TEST_PATHFROMURL[i].path) { - ok(!lstrcmpi(ret_path, TEST_PATHFROMURL[i].path), "got %s expected %s from url %s\n", ret_path, TEST_PATHFROMURL[i].path, TEST_PATHFROMURL[i].url); - ok(len == strlen(ret_path), "ret len %d from url %s\n", len, TEST_PATHFROMURL[i].url); + if (!(TEST_PATHFROMURL[i].todo & 0x1)) + ok(ret == TEST_PATHFROMURL[i].ret, "ret %08x from url %s\n", ret, TEST_PATHFROMURL[i].url); + else todo_wine + ok(ret == TEST_PATHFROMURL[i].ret, "ret %08x from url %s\n", ret, TEST_PATHFROMURL[i].url); + if(SUCCEEDED(ret) && TEST_PATHFROMURL[i].path) { + if(!(TEST_PATHFROMURL[i].todo & 0x2)) { + ok(!lstrcmpi(ret_path, TEST_PATHFROMURL[i].path), "got %s expected %s from url %s\n", ret_path, TEST_PATHFROMURL[i].path, TEST_PATHFROMURL[i].url); + ok(len == strlen(ret_path), "ret len %d from url %s\n", len, TEST_PATHFROMURL[i].url); + } else todo_wine + /* Wrong string, don't bother checking the length */ + ok(!lstrcmpi(ret_path, TEST_PATHFROMURL[i].path), "got %s expected %s from url %s\n", ret_path, TEST_PATHFROMURL[i].path, TEST_PATHFROMURL[i].url); } + if (pPathCreateFromUrlW) { len = INTERNET_MAX_URL_LENGTH; pathW = GetWideString(TEST_PATHFROMURL[i].path); urlW = GetWideString(TEST_PATHFROMURL[i].url); ret = pPathCreateFromUrlW(urlW, ret_pathW, &len, 0); - WideCharToMultiByte(CP_ACP, 0, ret_pathW, -1, ret_path, sizeof(ret_path),0,0); - ok(ret == TEST_PATHFROMURL[i].ret, "ret %08x from url L\"%s\"\n", ret, TEST_PATHFROMURL[i].url); - if(TEST_PATHFROMURL[i].path) { - ok(!lstrcmpiW(ret_pathW, pathW), "got %s expected %s from url L\"%s\"\n", - ret_path, TEST_PATHFROMURL[i].path, TEST_PATHFROMURL[i].url); - ok(len == lstrlenW(ret_pathW), "ret len %d from url L\"%s\"\n", len, TEST_PATHFROMURL[i].url); + WideCharToMultiByte(CP_ACP, 0, ret_pathW, -1, ret_path, sizeof(ret_path),NULL,NULL); + if (!(TEST_PATHFROMURL[i].todo & 0x1)) + ok(ret == TEST_PATHFROMURL[i].ret, "ret %08x from url L\"%s\"\n", ret, TEST_PATHFROMURL[i].url); + else todo_wine + ok(ret == TEST_PATHFROMURL[i].ret, "ret %08x from url L\"%s\"\n", ret, TEST_PATHFROMURL[i].url); + if(SUCCEEDED(ret) && TEST_PATHFROMURL[i].path) { + if(!(TEST_PATHFROMURL[i].todo & 0x2)) { + ok(!lstrcmpiW(ret_pathW, pathW), "got %s expected %s from url L\"%s\"\n", + ret_path, TEST_PATHFROMURL[i].path, TEST_PATHFROMURL[i].url); + ok(len == lstrlenW(ret_pathW), "ret len %d from url L\"%s\"\n", len, TEST_PATHFROMURL[i].url); + } else todo_wine + /* Wrong string, don't bother checking the length */ + ok(!lstrcmpiW(ret_pathW, pathW), "got %s expected %s from url L\"%s\"\n", + ret_path, TEST_PATHFROMURL[i].path, TEST_PATHFROMURL[i].url); } + + if (SUCCEEDED(ret)) + { + /* Check what happens if the buffer is too small */ + len2 = 2; + ret = pPathCreateFromUrlW(urlW, ret_pathW, &len2, 0); + ok(ret == E_POINTER, "ret %08x, expected E_POINTER from url %s\n", ret, TEST_PATHFROMURL[i].url); + if(!(TEST_PATHFROMURL[i].todo & 0x4)) + ok(len2 == len + 1, "got len = %d expected %d from url %s\n", len2, len + 1, TEST_PATHFROMURL[i].url); + else todo_wine + ok(len2 == len + 1, "got len = %d expected %d from url %s\n", len2, len + 1, TEST_PATHFROMURL[i].url); + } + FreeWideString(urlW); FreeWideString(pathW); } + } + + if (pPathCreateFromUrlAlloc) + { + static const WCHAR fileW[] = {'f','i','l','e',':','/','/','f','o','o',0}; + static const WCHAR fooW[] = {'\\','\\','f','o','o',0}; + + pathW = NULL; + ret = pPathCreateFromUrlAlloc(fileW, &pathW, 0); + ok(ret == S_OK, "got 0x%08x expected S_OK\n", ret); + ok(lstrcmpiW(pathW, fooW) == 0, "got %s expected %s\n", wine_dbgstr_w(pathW), wine_dbgstr_w(fooW)); + HeapFree(GetProcessHeap(), 0, pathW); } } @@ -1369,6 +1471,7 @@ pPathCreateFromUrlA = (void*)GetProcAddress(hShlwapi, "PathCreateFromUrlA"); pPathCreateFromUrlW = (void*)GetProcAddress(hShlwapi, "PathCreateFromUrlW"); + pPathCreateFromUrlAlloc = (void*)GetProcAddress(hShlwapi, "PathCreateFromUrlAlloc"); pPathCombineW = (void*)GetProcAddress(hShlwapi, "PathCombineW"); pPathIsValidCharA = (void*)GetProcAddress(hShlwapi, (LPSTR)455); pPathIsValidCharW = (void*)GetProcAddress(hShlwapi, (LPSTR)456); Modified: trunk/rostests/winetests/shlwapi/shreg.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/shreg.c…
============================================================================== --- trunk/rostests/winetests/shlwapi/shreg.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/shreg.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,16 +17,20 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdarg.h> -#include <stdio.h> - -#include "wine/test.h" -#include "windef.h" -#include "winbase.h" -#include "winerror.h" -#include "winreg.h" -#include "winuser.h" -#include "shlwapi.h" +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdarg.h> +//#include <stdio.h> + +#include <wine/test.h> +//#include "windef.h" +//#include "winbase.h" +//#include "winerror.h" +#include <winreg.h> +//#include "winuser.h" +#include <shlwapi.h> /* Keys used for testing */ #define REG_TEST_KEY "Software\\Wine\\Test" Modified: trunk/rostests/winetests/shlwapi/string.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/string.…
============================================================================== --- trunk/rostests/winetests/shlwapi/string.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/string.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,18 +17,23 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdio.h> - -#include "wine/test.h" -#include "winbase.h" -#include "winerror.h" -#include "winnls.h" +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdio.h> + +#include <wine/test.h> +//#include "winbase.h" +//#include "winerror.h" +#include <winnls.h> +#include <ole2.h> #define NO_SHLWAPI_REG #define NO_SHLWAPI_PATH #define NO_SHLWAPI_GDI #define NO_SHLWAPI_STREAM -#include "shlwapi.h" -#include "shtypes.h" +#include <shlwapi.h> +//#include "shtypes.h" #define expect_eq(expr, val, type, fmt) do { \ type ret = expr; \ @@ -411,7 +416,7 @@ while(result->value) { - MultiByteToWideChar(0,0,result->byte_size_64,-1,szSrc,sizeof(szSrc)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP,0,result->byte_size_64,-1,szSrc,sizeof(szSrc)/sizeof(WCHAR)); lpRes = StrCpyW(szBuff, szSrc); ok(!StrCmpW(szSrc, szBuff) && lpRes == szBuff, "Copied string %s wrong\n", result->byte_size_64); @@ -475,7 +480,7 @@ while (result->string) { - MultiByteToWideChar(0,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); return_val = StrToIntW(szBuff); ok(return_val == result->str_to_int, "converted '%s' wrong (%d)\n", result->string, return_val); @@ -525,7 +530,7 @@ while (result->string) { return_val = -1; - MultiByteToWideChar(0,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); bRet = StrToIntExW(szBuff, 0, &return_val); ok(!bRet || return_val != -1, "No result returned from '%s'\n", result->string); @@ -539,7 +544,7 @@ while (result->string) { return_val = -1; - MultiByteToWideChar(0,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); bRet = StrToIntExW(szBuff, STIF_SUPPORT_HEX, &return_val); ok(!bRet || return_val != -1, "No result returned from '%s'\n", result->string); @@ -604,7 +609,7 @@ while (result->string) { return_val = -1; - MultiByteToWideChar(0,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); bRet = pStrToInt64ExW(szBuff, 0, &return_val); ok(!bRet || return_val != -1, "No result returned from '%s'\n", result->string); @@ -618,7 +623,7 @@ while (result->string) { return_val = -1; - MultiByteToWideChar(0,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP,0,result->string,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR)); bRet = pStrToInt64ExW(szBuff, STIF_SUPPORT_HEX, &return_val); ok(!bRet || return_val != -1, "No result returned from '%s'\n", result->string); @@ -693,7 +698,7 @@ while(result->value) { pStrFormatKBSizeW(result->value, szBuffW, 256); - WideCharToMultiByte(0,0,szBuffW,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR),0,0); + WideCharToMultiByte(CP_ACP,0,szBuffW,-1,szBuff,sizeof(szBuff)/sizeof(WCHAR),NULL,NULL); ok(!strcmp(result->kb_size, szBuff), "Formatted %x%08x wrong: got %s, expected %s\n", (LONG)(result->value >> 32), (LONG)result->value, szBuff, result->kb_size); Modified: trunk/rostests/winetests/shlwapi/testlist.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/testlis…
============================================================================== --- trunk/rostests/winetests/shlwapi/testlist.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/testlist.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -1,10 +1,7 @@ /* Automatically generated file; DO NOT EDIT!! */ -#define WIN32_LEAN_AND_MEAN -#include <windows.h> - #define STANDALONE -#include "wine/test.h" +#include <wine/test.h> extern void func_clist(void); extern void func_clsid(void); Modified: trunk/rostests/winetests/shlwapi/thread.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/thread.…
============================================================================== --- trunk/rostests/winetests/shlwapi/thread.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/thread.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -17,19 +17,24 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdio.h> +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdio.h> #include <stdarg.h> #define COBJMACROS #define CONST_VTABLE -#include "windef.h" -#include "winbase.h" -#include "winerror.h" -#include "ole2.h" -#include "shlwapi.h" - -#include "wine/test.h" +#include <windef.h> +#include <winbase.h> +//#include "winreg.h" +//#include "winerror.h" +#include <ole2.h> +//#include "shlwapi.h" + +#include <wine/test.h> static HRESULT (WINAPI *pSHCreateThreadRef)(LONG*, IUnknown**); static HRESULT (WINAPI *pSHGetThreadRef)(IUnknown**); Modified: trunk/rostests/winetests/shlwapi/url.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/shlwapi/url.c?r…
============================================================================== --- trunk/rostests/winetests/shlwapi/url.c [iso-8859-1] (original) +++ trunk/rostests/winetests/shlwapi/url.c [iso-8859-1] Sun Mar 24 12:36:17 2013 @@ -18,16 +18,21 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include <stdarg.h> -#include <stdio.h> - -#include "wine/test.h" -#include "windef.h" -#include "winbase.h" -#include "winreg.h" -#include "shlwapi.h" -#include "wininet.h" -#include "intshcut.h" +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +//#include <stdarg.h> +//#include <stdio.h> + +#include <wine/test.h> +//#include "windef.h" +//#include "winbase.h" +#include <winreg.h> +#include <winnls.h> +#include <shlwapi.h> +#include <wininet.h> +#include <intshcut.h> /* ################ */ static HMODULE hShlwapi; @@ -450,7 +455,8 @@ { "file://e:/b/c", FALSE, TRUE }, { "http:partial", FALSE, FALSE }, { "
mailto://www.winehq.org/test.html
", TRUE, FALSE }, - { "file:partial", FALSE, TRUE } + { "file:partial", FALSE, TRUE }, + { "File:partial", FALSE, TRUE }, }; /* ########################### */ @@ -459,7 +465,7 @@ { LPWSTR wszString = HeapAlloc(GetProcessHeap(), 0, (2*INTERNET_MAX_URL_LENGTH) * sizeof(WCHAR)); - MultiByteToWideChar(0, 0, szString, -1, wszString, INTERNET_MAX_URL_LENGTH); + MultiByteToWideChar(CP_ACP, 0, szString, -1, wszString, INTERNET_MAX_URL_LENGTH); return wszString; } @@ -1062,7 +1068,7 @@ BOOL choped; int pos; - MultiByteToWideChar(CP_ACP, 0, "
http://www.winehq.org/X
", -1, szUrl, 128); + MultiByteToWideChar(CP_ACP, 0, "
http://www.winehq.org/X
", -1, szUrl, sizeof(szUrl)/sizeof(szUrl[0])); pos = lstrlenW(szUrl) - 1; szUrl[pos] = i; urllen = INTERNET_MAX_URL_LENGTH; @@ -1219,7 +1225,7 @@ test_UrlIs_null(URLIS_URL); for(i = 0; i < sizeof(TEST_PATH_IS_URL) / sizeof(TEST_PATH_IS_URL[0]); i++) { - MultiByteToWideChar(CP_ACP, 0, TEST_PATH_IS_URL[i].path, -1, wurl, 80); + MultiByteToWideChar(CP_ACP, 0, TEST_PATH_IS_URL[i].path, -1, wurl, sizeof(wurl)/sizeof(*wurl)); ret = pUrlIsA( TEST_PATH_IS_URL[i].path, URLIS_URL ); ok( ret == TEST_PATH_IS_URL[i].expect, @@ -1234,7 +1240,7 @@ } } for(i = 0; i < sizeof(TEST_URLIS_ATTRIBS) / sizeof(TEST_URLIS_ATTRIBS[0]); i++) { - MultiByteToWideChar(CP_ACP, 0, TEST_URLIS_ATTRIBS[i].url, -1, wurl, 80); + MultiByteToWideChar(CP_ACP, 0, TEST_URLIS_ATTRIBS[i].url, -1, wurl, sizeof(wurl)/sizeof(*wurl)); ret = pUrlIsA( TEST_URLIS_ATTRIBS[i].url, URLIS_OPAQUE); ok( ret == TEST_URLIS_ATTRIBS[i].expectOpaque, @@ -1288,7 +1294,7 @@ ok(strcmp(szReturnUrl,TEST_URL_UNESCAPE[i].expect)==0, "Expected \"%s\", but got \"%s\" from \"%s\"\n", TEST_URL_UNESCAPE[i].expect, szReturnUrl, TEST_URL_UNESCAPE[i].url); ZeroMemory(szReturnUrl, sizeof(szReturnUrl)); - /* if we set the bufferpointer to NULL here UrlUnescape fails and string gets not converted */ + /* if we set the buffer pointer to NULL here, UrlUnescape fails and the string is not converted */ res = pUrlUnescapeA(TEST_URL_UNESCAPE[i].url, szReturnUrl, NULL, 0); ok(res == E_INVALIDARG, "UrlUnescapeA returned 0x%x (expected E_INVALIDARG) for \"%s\"\n", @@ -1319,7 +1325,7 @@ ok(!strcmp(inplace, expected), "got %s expected %s\n", inplace, expected); ok(dwEscaped == 27, "got %d expected 27\n", dwEscaped); - /* if we set the bufferpointer to NULL, the string apparently still gets converted (Google Lively does this)) */ + /* if we set the buffer pointer to NULL, the string apparently still gets converted (Google Lively does this) */ res = pUrlUnescapeA(another_inplace, NULL, NULL, URL_UNESCAPE_INPLACE); ok(res == S_OK, "UrlUnescapeA returned 0x%x (expected S_OK)\n", res); ok(!strcmp(another_inplace, expected), "got %s expected %s\n", another_inplace, expected); @@ -1330,7 +1336,7 @@ ok(res == S_OK, "UrlUnescapeW returned 0x%x (expected S_OK)\n", res); ok(dwEscaped == 50, "got %d expected 50\n", dwEscaped); - /* if we set the bufferpointer to NULL, the string apparently still gets converted (Google Lively does this)) */ + /* if we set the buffer pointer to NULL, the string apparently still gets converted (Google Lively does this) */ res = pUrlUnescapeW(another_inplaceW, NULL, NULL, URL_UNESCAPE_INPLACE); ok(res == S_OK, "UrlUnescapeW returned 0x%x (expected S_OK)\n", res);
11 years, 9 months
1
0
0
0
[akhaldi] 58600: [SHLWAPI] * Sync with Wine 1.5.26.
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sun Mar 24 12:35:51 2013 New Revision: 58600 URL:
http://svn.reactos.org/svn/reactos?rev=58600&view=rev
Log: [SHLWAPI] * Sync with Wine 1.5.26. Modified: trunk/reactos/dll/win32/shlwapi/istream.c trunk/reactos/dll/win32/shlwapi/ordinal.c trunk/reactos/dll/win32/shlwapi/path.c trunk/reactos/dll/win32/shlwapi/reg.c trunk/reactos/dll/win32/shlwapi/shlwapi.rc trunk/reactos/dll/win32/shlwapi/shlwapi.spec trunk/reactos/dll/win32/shlwapi/string.c trunk/reactos/dll/win32/shlwapi/thread.c trunk/reactos/dll/win32/shlwapi/url.c trunk/reactos/media/doc/README.WINE Modified: trunk/reactos/dll/win32/shlwapi/istream.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/istream.…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/istream.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/istream.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -531,7 +531,7 @@ if (!lpszPath) return HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND); - MultiByteToWideChar(0, 0, lpszPath, -1, szPath, MAX_PATH); + MultiByteToWideChar(CP_ACP, 0, lpszPath, -1, szPath, MAX_PATH); return SHCreateStreamOnFileW(szPath, dwMode, lppStream); } Modified: trunk/reactos/dll/win32/shlwapi/ordinal.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/ordinal.…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/ordinal.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/ordinal.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -639,25 +639,6 @@ return 0; memcpy(lpszDest, xguid, iLen*sizeof(WCHAR)); return iLen; -} - -/************************************************************************* - * @ [SHLWAPI.29] - * - * Determine if a Unicode character is a space. - * - * PARAMS - * wc [I] Character to check. - * - * RETURNS - * TRUE, if wc is a space, - * FALSE otherwise. - */ -BOOL WINAPI IsCharSpaceW(WCHAR wc) -{ - WORD CharType; - - return GetStringTypeW(CT_CTYPE1, &wc, 1, &CharType) && (CharType & C1_SPACE); } /************************************************************************* @@ -2680,7 +2661,7 @@ lpSubKey = strRegistryPolicyW; retval = RegOpenKeyW(HKEY_LOCAL_MACHINE, lpSubKey, &hKey); - if (retval != ERROR_SUCCESS) + if (retval != ERROR_SUCCESS) retval = RegOpenKeyW(HKEY_CURRENT_USER, lpSubKey, &hKey); if (retval != ERROR_SUCCESS) return 0; @@ -2728,7 +2709,7 @@ /* we have a known policy */ /* check if this policy has been cached */ - if (*polArr == SHELL_NO_POLICY) + if (*polArr == SHELL_NO_POLICY) *polArr = SHGetRestriction(initial, polTable->appstr, polTable->keystr); return *polArr; } Modified: trunk/reactos/dll/win32/shlwapi/path.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/path.c?r…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/path.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/path.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -3246,6 +3246,9 @@ HRESULT ret; DWORD lenW = sizeof(bufW)/sizeof(WCHAR), lenA; + if (!pszUrl || !pszPath || !pcchPath || !*pcchPath) + return E_INVALIDARG; + if(!RtlCreateUnicodeStringFromAsciiz(&urlW, pszUrl)) return E_INVALIDARG; if((ret = PathCreateFromUrlW(urlW.Buffer, pathW, &lenW, dwReserved)) == E_POINTER) { @@ -3287,61 +3290,156 @@ LPDWORD pcchPath, DWORD dwReserved) { static const WCHAR file_colon[] = { 'f','i','l','e',':',0 }; - HRESULT hr; - DWORD nslashes = 0; - WCHAR *ptr; + static const WCHAR localhost[] = { 'l','o','c','a','l','h','o','s','t',0 }; + DWORD nslashes, unescape, len; + const WCHAR *src; + WCHAR *tpath, *dst; + HRESULT ret; TRACE("(%s,%p,%p,0x%08x)\n", debugstr_w(pszUrl), pszPath, pcchPath, dwReserved); if (!pszUrl || !pszPath || !pcchPath || !*pcchPath) return E_INVALIDARG; - - if (strncmpW(pszUrl, file_colon, 5)) + if (CompareStringW(LOCALE_INVARIANT, NORM_IGNORECASE, pszUrl, 5, + file_colon, 5) != CSTR_EQUAL) return E_INVALIDARG; pszUrl += 5; - - while(*pszUrl == '/' || *pszUrl == '\\') { + ret = S_OK; + + src = pszUrl; + nslashes = 0; + while (*src == '/' || *src == '\\') { nslashes++; - pszUrl++; - } - - if(isalphaW(*pszUrl) && (pszUrl[1] == ':' || pszUrl[1] == '|') && (pszUrl[2] == '/' || pszUrl[2] == '\\')) - nslashes = 0; - - switch(nslashes) { + src++; + } + + /* We need a temporary buffer so we can compute what size to ask for. + * We know that the final string won't be longer than the current pszUrl + * plus at most two backslashes. All the other transformations make it + * shorter. + */ + len = 2 + lstrlenW(pszUrl) + 1; + if (*pcchPath < len) + tpath = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR)); + else + tpath = pszPath; + + len = 0; + dst = tpath; + unescape = 1; + switch (nslashes) + { + case 0: + /* 'file:' + escaped DOS path */ + break; + case 1: + /* 'file:/' + escaped DOS path */ + /* fall through */ + case 3: + /* 'file:///' (implied localhost) + escaped DOS path */ + if (!isalphaW(*src) || (src[1] != ':' && src[1] != '|')) + src -= 1; + break; case 2: - pszUrl -= 2; + if (CompareStringW(LOCALE_INVARIANT, NORM_IGNORECASE, src, 9, + localhost, 9) == CSTR_EQUAL && + (src[9] == '/' || src[9] == '\\')) + { + /* 'file://localhost/' + escaped DOS path */ + src += 10; + } + else if (isalphaW(*src) && (src[1] == ':' || src[1] == '|')) + { + /* 'file://' + unescaped DOS path */ + unescape = 0; + } + else + { + /* 'file://hostname:port/path' (where path is escaped) + * or 'file:' + escaped UNC path (\\server\share\path) + * The second form is clearly specific to Windows and it might + * even be doing a network lookup to try to figure it out. + */ + while (*src && *src != '/' && *src != '\\') + src++; + len = src - pszUrl; + StrCpyNW(dst, pszUrl, len + 1); + dst += len; + if (isalphaW(src[1]) && (src[2] == ':' || src[2] == '|')) + { + /* 'Forget' to add a trailing '/', just like Windows */ + src++; + } + } break; - case 0: - break; + case 4: + /* 'file://' + unescaped UNC path (\\server\share\path) */ + unescape = 0; + if (isalphaW(*src) && (src[1] == ':' || src[1] == '|')) + break; + /* fall through */ default: - pszUrl -= 1; - break; - } - - hr = UrlUnescapeW((LPWSTR)pszUrl, pszPath, pcchPath, 0); - if(hr != S_OK) return hr; - - for(ptr = pszPath; *ptr; ptr++) - if(*ptr == '/') *ptr = '\\'; - - while(*pszPath == '\\') - pszPath++; - - if(isalphaW(*pszPath) && pszPath[1] == '|' && pszPath[2] == '\\') /* c|\ -> c:\ */ - pszPath[1] = ':'; - - if(nslashes == 2 && (ptr = strchrW(pszPath, '\\'))) { /* \\host\c:\ -> \\hostc:\ */ - ptr++; - if(isalphaW(*ptr) && (ptr[1] == ':' || ptr[1] == '|') && ptr[2] == '\\') { - memmove(ptr - 1, ptr, (strlenW(ptr) + 1) * sizeof(WCHAR)); - (*pcchPath)--; + /* 'file:/...' + escaped UNC path (\\server\share\path) */ + src -= 2; + } + + /* Copy the remainder of the path */ + len += lstrlenW(src); + StrCpyW(dst, src); + + /* First do the Windows-specific path conversions */ + for (dst = tpath; *dst; dst++) + if (*dst == '/') *dst = '\\'; + if (isalphaW(*tpath) && tpath[1] == '|') + tpath[1] = ':'; /* c| -> c: */ + + /* And only then unescape the path (i.e. escaped slashes are left as is) */ + if (unescape) + { + ret = UrlUnescapeW(tpath, NULL, &len, URL_UNESCAPE_INPLACE); + if (ret == S_OK) + { + /* When working in-place UrlUnescapeW() does not set len */ + len = lstrlenW(tpath); } } - TRACE("Returning %s\n",debugstr_w(pszPath)); - + if (*pcchPath < len + 1) + { + ret = E_POINTER; + *pcchPath = len + 1; + } + else + { + *pcchPath = len; + if (tpath != pszPath) + StrCpyW(pszPath, tpath); + } + if (tpath != pszPath) + HeapFree(GetProcessHeap(), 0, tpath); + + TRACE("Returning (%u) %s\n", *pcchPath, debugstr_w(pszPath)); + return ret; +} + +/************************************************************************* + * PathCreateFromUrlAlloc [SHLWAPI.@] + */ +HRESULT WINAPI PathCreateFromUrlAlloc(LPCWSTR pszUrl, LPWSTR *pszPath, + DWORD dwReserved) +{ + WCHAR pathW[MAX_PATH]; + DWORD size; + HRESULT hr; + + size = MAX_PATH; + hr = PathCreateFromUrlW(pszUrl, pathW, &size, dwReserved); + if (SUCCEEDED(hr)) + { + /* Yes, this is supposed to crash if pszPath is NULL */ + *pszPath = StrDupW(pathW); + } return hr; } Modified: trunk/reactos/dll/win32/shlwapi/reg.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/reg.c?re…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/reg.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/reg.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -2232,7 +2232,7 @@ TRACE("(hkey=%p,%s,%p08x,%d)\n", hKeySrc, debugstr_a(lpszSrcSubKey), hKeyDst, dwReserved); if (lpszSrcSubKey) - MultiByteToWideChar(0, 0, lpszSrcSubKey, -1, szSubKeyW, MAX_PATH); + MultiByteToWideChar(CP_ACP, 0, lpszSrcSubKey, -1, szSubKeyW, MAX_PATH); return SHCopyKeyW(hKeySrc, lpszSrcSubKey ? szSubKeyW : NULL, hKeyDst, dwReserved); } Modified: trunk/reactos/dll/win32/shlwapi/shlwapi.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/shlwapi.…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/shlwapi.rc [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/shlwapi.rc [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -1,5 +1,5 @@ /* - * Top level resource file for shlwapi + * Resources for shlwapi * * Copyright 2004 Jon Griffiths * Modified: trunk/reactos/dll/win32/shlwapi/shlwapi.spec URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/shlwapi.…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/shlwapi.spec [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/shlwapi.spec [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -566,6 +566,8 @@ @ stdcall HashData (ptr long ptr long) @ stdcall IntlStrEqWorkerA(long str str long) StrIsIntlEqualA @ stdcall IntlStrEqWorkerW(long wstr wstr long) StrIsIntlEqualW +@ stdcall IsCharSpaceA(long) +@ stdcall IsInternetESCEnabled() @ stdcall PathAddBackslashA (str) @ stdcall PathAddBackslashW (wstr) @ stdcall PathAddExtensionA (str str) @@ -586,6 +588,7 @@ @ stdcall PathCompactPathW(long wstr long) @ stdcall PathCreateFromUrlA(str ptr ptr long) @ stdcall PathCreateFromUrlW(wstr ptr ptr long) +@ stdcall PathCreateFromUrlAlloc(wstr ptr long) @ stdcall PathFileExistsA (str) @ stdcall PathFileExistsW (wstr) @ stdcall PathFindExtensionA (str) Modified: trunk/reactos/dll/win32/shlwapi/string.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/string.c…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/string.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/string.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -1891,7 +1891,7 @@ if (lpszStr) { - len = MultiByteToWideChar(0, 0, lpszStr, -1, 0, 0) * sizeof(WCHAR); + len = MultiByteToWideChar(CP_ACP, 0, lpszStr, -1, NULL, 0) * sizeof(WCHAR); *lppszDest = CoTaskMemAlloc(len); } else @@ -1899,7 +1899,7 @@ if (*lppszDest) { - MultiByteToWideChar(0, 0, lpszStr, -1, *lppszDest, len/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP, 0, lpszStr, -1, *lppszDest, len/sizeof(WCHAR)); hRet = S_OK; } else @@ -2828,3 +2828,28 @@ HeapFree(GetProcessHeap(), 0, dllname); return hr; } + +BOOL WINAPI IsCharSpaceA(CHAR c) +{ + WORD CharType; + return GetStringTypeA(GetSystemDefaultLCID(), CT_CTYPE1, &c, 1, &CharType) && (CharType & C1_SPACE); +} + +/************************************************************************* + * @ [SHLWAPI.29] + * + * Determine if a Unicode character is a space. + * + * PARAMS + * wc [I] Character to check. + * + * RETURNS + * TRUE, if wc is a space, + * FALSE otherwise. + */ +BOOL WINAPI IsCharSpaceW(WCHAR wc) +{ + WORD CharType; + + return GetStringTypeW(CT_CTYPE1, &wc, 1, &CharType) && (CharType & C1_SPACE); +} Modified: trunk/reactos/dll/win32/shlwapi/thread.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/thread.c…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/thread.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/thread.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -534,7 +534,7 @@ TRACE("(%s,%d)\n", debugstr_a(lpszName), iInitial); if (lpszName) - MultiByteToWideChar(0, 0, lpszName, -1, szBuff, MAX_PATH); + MultiByteToWideChar(CP_ACP, 0, lpszName, -1, szBuff, MAX_PATH); return SHGlobalCounterCreateNamedW(lpszName ? szBuff : NULL, iInitial); } Modified: trunk/reactos/dll/win32/shlwapi/url.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shlwapi/url.c?re…
============================================================================== --- trunk/reactos/dll/win32/shlwapi/url.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shlwapi/url.c [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -270,8 +270,8 @@ ret = UrlCanonicalizeW(url, canonical, pcchCanonicalized, dwFlags); if(ret == S_OK) - WideCharToMultiByte(0, 0, canonical, -1, pszCanonicalized, - *pcchCanonicalized+1, 0, 0); + WideCharToMultiByte(CP_ACP, 0, canonical, -1, pszCanonicalized, + *pcchCanonicalized+1, NULL, NULL); HeapFree(GetProcessHeap(), 0, url); HeapFree(GetProcessHeap(), 0, canonical); @@ -631,8 +631,8 @@ relative = base + INTERNET_MAX_URL_LENGTH; combined = relative + INTERNET_MAX_URL_LENGTH; - MultiByteToWideChar(0, 0, pszBase, -1, base, INTERNET_MAX_URL_LENGTH); - MultiByteToWideChar(0, 0, pszRelative, -1, relative, INTERNET_MAX_URL_LENGTH); + MultiByteToWideChar(CP_ACP, 0, pszBase, -1, base, INTERNET_MAX_URL_LENGTH); + MultiByteToWideChar(CP_ACP, 0, pszRelative, -1, relative, INTERNET_MAX_URL_LENGTH); len = *pcchCombined; ret = UrlCombineW(base, relative, pszCombined?combined:NULL, &len, dwFlags); @@ -642,14 +642,14 @@ return ret; } - len2 = WideCharToMultiByte(0, 0, combined, len, 0, 0, 0, 0); + len2 = WideCharToMultiByte(CP_ACP, 0, combined, len, NULL, 0, NULL, NULL); if (len2 > *pcchCombined) { *pcchCombined = len2; HeapFree(GetProcessHeap(), 0, base); return E_POINTER; } - WideCharToMultiByte(0, 0, combined, len+1, pszCombined, (*pcchCombined)+1, - 0, 0); + WideCharToMultiByte(CP_ACP, 0, combined, len+1, pszCombined, (*pcchCombined)+1, + NULL, NULL); *pcchCombined = len2; HeapFree(GetProcessHeap(), 0, base); return S_OK; @@ -1601,7 +1601,7 @@ /* Win32 hashes the data as an ASCII string, presumably so that both A+W * return the same digests for the same URL. */ - WideCharToMultiByte(0, 0, pszUrl, -1, szUrl, MAX_PATH, 0, 0); + WideCharToMultiByte(CP_ACP, 0, pszUrl, -1, szUrl, MAX_PATH, NULL, NULL); HashData((const BYTE*)szUrl, (int)strlen(szUrl), lpDest, nDestLen); return S_OK; } @@ -1670,7 +1670,7 @@ WCHAR value[MAX_PATH], data[MAX_PATH]; WCHAR Wxx, Wyy; - MultiByteToWideChar(0, 0, + MultiByteToWideChar(CP_ACP, 0, "Software\\Microsoft\\Windows\\CurrentVersion\\URL\\Prefixes", -1, reg_path, MAX_PATH); RegOpenKeyExW(HKEY_LOCAL_MACHINE, reg_path, 0, 1, &newkey); @@ -1868,7 +1868,8 @@ return FALSE; case URLIS_FILEURL: - return !StrCmpNA("file:", pszUrl, 5); + return (CompareStringA(LOCALE_INVARIANT, NORM_IGNORECASE, pszUrl, 5, + "file:", 5) == CSTR_EQUAL); case URLIS_DIRECTORY: last = pszUrl + strlen(pszUrl) - 1; @@ -1893,7 +1894,7 @@ */ BOOL WINAPI UrlIsW(LPCWSTR pszUrl, URLIS Urlis) { - static const WCHAR stemp[] = { 'f','i','l','e',':',0 }; + static const WCHAR file_colon[] = { 'f','i','l','e',':',0 }; PARSEDURLW base; DWORD res1; LPCWSTR last; @@ -1921,7 +1922,8 @@ return FALSE; case URLIS_FILEURL: - return !strncmpW(stemp, pszUrl, 5); + return (CompareStringW(LOCALE_INVARIANT, NORM_IGNORECASE, pszUrl, 5, + file_colon, 5) == CSTR_EQUAL); case URLIS_DIRECTORY: last = pszUrl + strlenW(pszUrl) - 1; @@ -2199,7 +2201,7 @@ (2*INTERNET_MAX_URL_LENGTH) * sizeof(WCHAR)); out = in + INTERNET_MAX_URL_LENGTH; - MultiByteToWideChar(0, 0, pszIn, -1, in, INTERNET_MAX_URL_LENGTH); + MultiByteToWideChar(CP_ACP, 0, pszIn, -1, in, INTERNET_MAX_URL_LENGTH); len = INTERNET_MAX_URL_LENGTH; ret = UrlGetPartW(in, out, &len, dwPart, dwFlags); @@ -2209,13 +2211,13 @@ return ret; } - len2 = WideCharToMultiByte(0, 0, out, len, 0, 0, 0, 0); + len2 = WideCharToMultiByte(CP_ACP, 0, out, len, NULL, 0, NULL, NULL); if (len2 > *pcchOut) { *pcchOut = len2+1; HeapFree(GetProcessHeap(), 0, in); return E_POINTER; } - len2 = WideCharToMultiByte(0, 0, out, len+1, pszOut, *pcchOut, 0, 0); + len2 = WideCharToMultiByte(CP_ACP, 0, out, len+1, pszOut, *pcchOut, NULL, NULL); *pcchOut = len2-1; HeapFree(GetProcessHeap(), 0, in); return ret; @@ -2529,7 +2531,7 @@ hRet = MLBuildResURLW(lpszLibName ? szLibName : NULL, hMod, dwFlags, lpszRes ? szRes : NULL, lpszDest ? szDest : NULL, dwDestLen); if (SUCCEEDED(hRet) && lpszDest) - WideCharToMultiByte(CP_ACP, 0, szDest, -1, lpszDest, dwDestLen, 0, 0); + WideCharToMultiByte(CP_ACP, 0, szDest, -1, lpszDest, dwDestLen, NULL, NULL); return hRet; } @@ -2623,3 +2625,12 @@ return S_OK; } + +/************************************************************************* + * IsInternetESCEnabled [SHLWAPI.@] + */ +BOOL WINAPI IsInternetESCEnabled(void) +{ + FIXME(": stub\n"); + return FALSE; +} Modified: trunk/reactos/media/doc/README.WINE URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=…
============================================================================== --- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original) +++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Sun Mar 24 12:35:51 2013 @@ -164,7 +164,7 @@ reactos/dll/win32/shdocvw # Autosync reactos/dll/win32/shell32 # Forked at Wine-20071011 reactos/dll/win32/shfolder # Autosync -reactos/dll/win32/shlwapi # Synced to Wine-1.5.13 +reactos/dll/win32/shlwapi # Synced to Wine-1.5.26 reactos/dll/win32/slbcsp # Synced to Wine-1.5.19 reactos/dll/win32/snmpapi # Synced to Wine-1.5.19 reactos/dll/win32/softpub # Synced to Wine-1.5.19
11 years, 9 months
1
0
0
0
[gadamopoulos] 58599: [win32k] - Add a hackfix to ftGdiGetGlyphOutline to make it handle scaling more properly - Improves CORE-4657
by gadamopoulos@svn.reactos.org
Author: gadamopoulos Date: Sun Mar 24 09:29:55 2013 New Revision: 58599 URL:
http://svn.reactos.org/svn/reactos?rev=58599&view=rev
Log: [win32k] - Add a hackfix to ftGdiGetGlyphOutline to make it handle scaling more properly - Improves CORE-4657 Modified: trunk/reactos/win32ss/gdi/ntgdi/freetype.c Modified: trunk/reactos/win32ss/gdi/ntgdi/freetype.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/freetype…
============================================================================== --- trunk/reactos/win32ss/gdi/ntgdi/freetype.c [iso-8859-1] (original) +++ trunk/reactos/win32ss/gdi/ntgdi/freetype.c [iso-8859-1] Sun Mar 24 09:29:55 2013 @@ -1646,15 +1646,32 @@ IntLockFreeType; /* Scaling transform */ - if (aveWidth) - { - FT_Matrix scaleMat; - DPRINT("Scaling Trans!\n"); - scaleMat.xx = FT_FixedFromFloat(widthRatio); - scaleMat.xy = 0; - scaleMat.yx = 0; - scaleMat.yy = (1 << 16); - FT_Matrix_Multiply(&scaleMat, &transMat); + /*if (aveWidth)*/ + { + + FT_Matrix ftmatrix; + FLOATOBJ efTemp; + + PMATRIX pmx = DC_pmxWorldToDevice(dc); + + /* Create a freetype matrix, by converting to 16.16 fixpoint format */ + efTemp = pmx->efM11; + FLOATOBJ_MulLong(&efTemp, 0x00010000); + ftmatrix.xx = FLOATOBJ_GetLong(&efTemp); + + efTemp = pmx->efM12; + FLOATOBJ_MulLong(&efTemp, 0x00010000); + ftmatrix.xy = FLOATOBJ_GetLong(&efTemp); + + efTemp = pmx->efM21; + FLOATOBJ_MulLong(&efTemp, 0x00010000); + ftmatrix.yx = FLOATOBJ_GetLong(&efTemp); + + efTemp = pmx->efM22; + FLOATOBJ_MulLong(&efTemp, 0x00010000); + ftmatrix.yy = FLOATOBJ_GetLong(&efTemp); + + FT_Matrix_Multiply(&ftmatrix, &transMat); needsTransform = TRUE; }
11 years, 9 months
1
0
0
0
[tkreuzer] 58598: [INCLUDE] - Add missing __stosq intrinsic - Move architecture specific stuff to a later location in wdm.h to make sure we have ASSERT macros already - Add missing extern "C" to so...
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat Mar 23 21:57:17 2013 New Revision: 58598 URL:
http://svn.reactos.org/svn/reactos?rev=58598&view=rev
Log: [INCLUDE] - Add missing __stosq intrinsic - Move architecture specific stuff to a later location in wdm.h to make sure we have ASSERT macros already - Add missing extern "C" to some NDK header - Remove duplicate sal definitions Modified: trunk/reactos/include/crt/msc/intrin.h trunk/reactos/include/ddk/wdm.h trunk/reactos/include/ndk/mmtypes.h trunk/reactos/include/ndk/obfuncs.h trunk/reactos/include/ndk/rtlfuncs.h trunk/reactos/include/psdk/sal.h trunk/reactos/include/psdk/sal_old.h trunk/reactos/include/xdk/kefuncs.h trunk/reactos/include/xdk/ketypes.h Modified: trunk/reactos/include/crt/msc/intrin.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/msc/intrin.h?r…
============================================================================== --- trunk/reactos/include/crt/msc/intrin.h [iso-8859-1] (original) +++ trunk/reactos/include/crt/msc/intrin.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -117,6 +117,8 @@ #pragma intrinsic(__movsd) #endif #ifdef _M_AMD64 +void __stosq(unsigned __int64 * Dest, unsigned __int64 Data, size_t Count); +#pragma intrinsic(__stosq) void __movsq(unsigned __int64 * Destination, unsigned __int64 const * Source, size_t Count); #pragma intrinsic(__movsq) #endif Modified: trunk/reactos/include/ddk/wdm.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/wdm.h?rev=5859…
============================================================================== --- trunk/reactos/include/ddk/wdm.h [iso-8859-1] (original) +++ trunk/reactos/include/ddk/wdm.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -1675,567 +1675,6 @@ extern PCCHAR KeNumberProcessors; #endif - -#if defined(_M_IX86) -/** Kernel definitions for x86 **/ - -/* Interrupt request levels */ -#define PASSIVE_LEVEL 0 -#define LOW_LEVEL 0 -#define APC_LEVEL 1 -#define DISPATCH_LEVEL 2 -#define CMCI_LEVEL 5 -#define PROFILE_LEVEL 27 -#define CLOCK1_LEVEL 28 -#define CLOCK2_LEVEL 28 -#define IPI_LEVEL 29 -#define POWER_LEVEL 30 -#define HIGH_LEVEL 31 -#define CLOCK_LEVEL CLOCK2_LEVEL - -#define KIP0PCRADDRESS 0xffdff000 -#define KI_USER_SHARED_DATA 0xffdf0000 -#define SharedUserData ((KUSER_SHARED_DATA * CONST)KI_USER_SHARED_DATA) - -#define PAGE_SIZE 0x1000 -#define PAGE_SHIFT 12L -#define KeGetDcacheFillSize() 1L - -#define EFLAG_SIGN 0x8000 -#define EFLAG_ZERO 0x4000 -#define EFLAG_SELECT (EFLAG_SIGN | EFLAG_ZERO) - -#define RESULT_NEGATIVE ((EFLAG_SIGN & ~EFLAG_ZERO) & EFLAG_SELECT) -#define RESULT_ZERO ((~EFLAG_SIGN & EFLAG_ZERO) & EFLAG_SELECT) -#define RESULT_POSITIVE ((~EFLAG_SIGN & ~EFLAG_ZERO) & EFLAG_SELECT) - - -typedef struct _KFLOATING_SAVE { - ULONG ControlWord; - ULONG StatusWord; - ULONG ErrorOffset; - ULONG ErrorSelector; - ULONG DataOffset; - ULONG DataSelector; - ULONG Cr0NpxState; - ULONG Spare1; -} KFLOATING_SAVE, *PKFLOATING_SAVE; - -extern NTKERNELAPI volatile KSYSTEM_TIME KeTickCount; - -#define YieldProcessor _mm_pause - -FORCEINLINE -VOID -KeMemoryBarrier(VOID) -{ - LONG Barrier, *Dummy = &Barrier; - UNREFERENCED_LOCAL_VARIABLE(Dummy); - -#if defined(__GNUC__) - __asm__ __volatile__ ("xchg %%eax, %0" : : "m" (Barrier) : "%eax"); -#elif defined(_MSC_VER) - __asm xchg [Barrier], eax -#endif -} - -#define KeMemoryBarrierWithoutFence() _ReadWriteBarrier() - -_IRQL_requires_max_(HIGH_LEVEL) -_IRQL_saves_ -NTHALAPI -KIRQL -NTAPI -KeGetCurrentIrql(VOID); - -_IRQL_requires_max_(HIGH_LEVEL) -NTHALAPI -VOID -FASTCALL -KfLowerIrql( - _In_ _IRQL_restores_ _Notliteral_ KIRQL NewIrql); -#define KeLowerIrql(a) KfLowerIrql(a) - -_IRQL_requires_max_(HIGH_LEVEL) -_IRQL_raises_(NewIrql) -_IRQL_saves_ -NTHALAPI -KIRQL -FASTCALL -KfRaiseIrql( - _In_ KIRQL NewIrql); -#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) - -_IRQL_requires_max_(DISPATCH_LEVEL) -_IRQL_saves_ -_IRQL_raises_(DISPATCH_LEVEL) -NTHALAPI -KIRQL -NTAPI -KeRaiseIrqlToDpcLevel(VOID); - -NTHALAPI -KIRQL -NTAPI -KeRaiseIrqlToSynchLevel(VOID); - -_Requires_lock_not_held_(*SpinLock) -_Acquires_lock_(*SpinLock) -_IRQL_requires_max_(DISPATCH_LEVEL) -_IRQL_saves_ -_IRQL_raises_(DISPATCH_LEVEL) -NTHALAPI -KIRQL -FASTCALL -KfAcquireSpinLock( - _Inout_ PKSPIN_LOCK SpinLock); -#define KeAcquireSpinLock(a,b) *(b) = KfAcquireSpinLock(a) - -_Requires_lock_held_(*SpinLock) -_Releases_lock_(*SpinLock) -_IRQL_requires_(DISPATCH_LEVEL) -NTHALAPI -VOID -FASTCALL -KfReleaseSpinLock( - _Inout_ PKSPIN_LOCK SpinLock, - _In_ _IRQL_restores_ KIRQL NewIrql); -#define KeReleaseSpinLock(a,b) KfReleaseSpinLock(a,b) - -_Requires_lock_not_held_(*SpinLock) -_Acquires_lock_(*SpinLock) -_IRQL_requires_min_(DISPATCH_LEVEL) -NTKERNELAPI -VOID -FASTCALL -KefAcquireSpinLockAtDpcLevel( - _Inout_ PKSPIN_LOCK SpinLock); -#define KeAcquireSpinLockAtDpcLevel(SpinLock) KefAcquireSpinLockAtDpcLevel(SpinLock) - -_Requires_lock_held_(*SpinLock) -_Releases_lock_(*SpinLock) -_IRQL_requires_min_(DISPATCH_LEVEL) -NTKERNELAPI -VOID -FASTCALL -KefReleaseSpinLockFromDpcLevel( - _Inout_ PKSPIN_LOCK SpinLock); -#define KeReleaseSpinLockFromDpcLevel(SpinLock) KefReleaseSpinLockFromDpcLevel(SpinLock) - -NTSYSAPI -PKTHREAD -NTAPI -KeGetCurrentThread(VOID); - -_Always_(_Post_satisfies_(return<=0)) -_Must_inspect_result_ -_IRQL_requires_max_(DISPATCH_LEVEL) -_Kernel_float_saved_ -_At_(*FloatSave, _Kernel_requires_resource_not_held_(FloatState) _Kernel_acquires_resource_(FloatState)) -NTKERNELAPI -NTSTATUS -NTAPI -KeSaveFloatingPointState( - _Out_ PKFLOATING_SAVE FloatSave); - -_Success_(1) -_Kernel_float_restored_ -_At_(*FloatSave, _Kernel_requires_resource_held_(FloatState) _Kernel_releases_resource_(FloatState)) -NTKERNELAPI -NTSTATUS -NTAPI -KeRestoreFloatingPointState( - _In_ PKFLOATING_SAVE FloatSave); - -/* VOID - * KeFlushIoBuffers( - * IN PMDL Mdl, - * IN BOOLEAN ReadOperation, - * IN BOOLEAN DmaOperation) - */ -#define KeFlushIoBuffers(_Mdl, _ReadOperation, _DmaOperation) - -/* x86 and x64 performs a 0x2C interrupt */ -#define DbgRaiseAssertionFailure __int2c - -FORCEINLINE -VOID -_KeQueryTickCount( - OUT PLARGE_INTEGER CurrentCount) -{ - for (;;) { -#ifdef NONAMELESSUNION - CurrentCount->s.HighPart = KeTickCount.High1Time; - CurrentCount->s.LowPart = KeTickCount.LowPart; - if (CurrentCount->s.HighPart == KeTickCount.High2Time) break; -#else - CurrentCount->HighPart = KeTickCount.High1Time; - CurrentCount->LowPart = KeTickCount.LowPart; - if (CurrentCount->HighPart == KeTickCount.High2Time) break; -#endif - YieldProcessor(); - } -} -#define KeQueryTickCount(CurrentCount) _KeQueryTickCount(CurrentCount) - - - - - -#elif defined(_M_AMD64) -/** Kernel definitions for AMD64 **/ - -/* Interrupt request levels */ -#define PASSIVE_LEVEL 0 -#define LOW_LEVEL 0 -#define APC_LEVEL 1 -#define DISPATCH_LEVEL 2 -#define CMCI_LEVEL 5 -#define CLOCK_LEVEL 13 -#define IPI_LEVEL 14 -#define DRS_LEVEL 14 -#define POWER_LEVEL 14 -#define PROFILE_LEVEL 15 -#define HIGH_LEVEL 15 - -#define KI_USER_SHARED_DATA 0xFFFFF78000000000ULL -#define SharedUserData ((PKUSER_SHARED_DATA const)KI_USER_SHARED_DATA) -#define SharedInterruptTime (KI_USER_SHARED_DATA + 0x8) -#define SharedSystemTime (KI_USER_SHARED_DATA + 0x14) -#define SharedTickCount (KI_USER_SHARED_DATA + 0x320) - -#define PAGE_SIZE 0x1000 -#define PAGE_SHIFT 12L - -#define EFLAG_SIGN 0x8000 -#define EFLAG_ZERO 0x4000 -#define EFLAG_SELECT (EFLAG_SIGN | EFLAG_ZERO) - -typedef struct _KFLOATING_SAVE { - ULONG Dummy; -} KFLOATING_SAVE, *PKFLOATING_SAVE; - -typedef XSAVE_FORMAT XMM_SAVE_AREA32, *PXMM_SAVE_AREA32; - -#define KeQueryInterruptTime() \ - (*(volatile ULONG64*)SharedInterruptTime) - -#define KeQuerySystemTime(CurrentCount) \ - *(ULONG64*)(CurrentCount) = *(volatile ULONG64*)SharedSystemTime - -#define KeQueryTickCount(CurrentCount) \ - *(ULONG64*)(CurrentCount) = *(volatile ULONG64*)SharedTickCount - -#define KeGetDcacheFillSize() 1L - -#define YieldProcessor _mm_pause -#define MemoryBarrier __faststorefence -#define FastFence __faststorefence -#define LoadFence _mm_lfence -#define MemoryFence _mm_mfence -#define StoreFence _mm_sfence -#define LFENCE_ACQUIRE() LoadFence() - -FORCEINLINE -VOID -KeMemoryBarrier(VOID) -{ - // FIXME: Do we really need lfence after the __faststorefence ? - FastFence(); - LFENCE_ACQUIRE(); -} - -#define KeMemoryBarrierWithoutFence() _ReadWriteBarrier() - -FORCEINLINE -KIRQL -KeGetCurrentIrql(VOID) -{ - return (KIRQL)__readcr8(); -} - -FORCEINLINE -VOID -KeLowerIrql(IN KIRQL NewIrql) -{ - ASSERT((KIRQL)__readcr8() >= NewIrql); - __writecr8(NewIrql); -} - -FORCEINLINE -KIRQL -KfRaiseIrql(IN KIRQL NewIrql) -{ - KIRQL OldIrql; - - OldIrql = (KIRQL)__readcr8(); - ASSERT(OldIrql <= NewIrql); - __writecr8(NewIrql); - return OldIrql; -} -#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) - -FORCEINLINE -KIRQL -KeRaiseIrqlToDpcLevel(VOID) -{ - return KfRaiseIrql(DISPATCH_LEVEL); -} - -FORCEINLINE -KIRQL -KeRaiseIrqlToSynchLevel(VOID) -{ - return KfRaiseIrql(12); // SYNCH_LEVEL = IPI_LEVEL - 2 -} - -FORCEINLINE -PKTHREAD -KeGetCurrentThread(VOID) -{ - return (struct _KTHREAD *)__readgsqword(0x188); -} - -FORCEINLINE -NTSTATUS -KeSaveFloatingPointState(PVOID FloatingState) -{ - UNREFERENCED_PARAMETER(FloatingState); - return STATUS_SUCCESS; -} - -FORCEINLINE -NTSTATUS -KeRestoreFloatingPointState(PVOID FloatingState) -{ - UNREFERENCED_PARAMETER(FloatingState); - return STATUS_SUCCESS; -} - -/* VOID - * KeFlushIoBuffers( - * IN PMDL Mdl, - * IN BOOLEAN ReadOperation, - * IN BOOLEAN DmaOperation) - */ -#define KeFlushIoBuffers(_Mdl, _ReadOperation, _DmaOperation) - -/* x86 and x64 performs a 0x2C interrupt */ -#define DbgRaiseAssertionFailure __int2c - -#elif defined(_M_IA64) -/** Kernel definitions for IA64 **/ - -/* Interrupt request levels */ -#define PASSIVE_LEVEL 0 -#define LOW_LEVEL 0 -#define APC_LEVEL 1 -#define DISPATCH_LEVEL 2 -#define CMC_LEVEL 3 -#define DEVICE_LEVEL_BASE 4 -#define PC_LEVEL 12 -#define IPI_LEVEL 14 -#define DRS_LEVEL 14 -#define CLOCK_LEVEL 13 -#define POWER_LEVEL 15 -#define PROFILE_LEVEL 15 -#define HIGH_LEVEL 15 - -#define KI_USER_SHARED_DATA ((ULONG_PTR)(KADDRESS_BASE + 0xFFFE0000)) -extern volatile LARGE_INTEGER KeTickCount; - -#define PAUSE_PROCESSOR __yield(); - -FORCEINLINE -VOID -KeFlushWriteBuffer(VOID) -{ - __mf (); - return; -} - -NTSYSAPI -PKTHREAD -NTAPI -KeGetCurrentThread(VOID); - - -#elif defined(_M_PPC) - -/* Interrupt request levels */ -#define PASSIVE_LEVEL 0 -#define LOW_LEVEL 0 -#define APC_LEVEL 1 -#define DISPATCH_LEVEL 2 -#define PROFILE_LEVEL 27 -#define CLOCK1_LEVEL 28 -#define CLOCK2_LEVEL 28 -#define IPI_LEVEL 29 -#define POWER_LEVEL 30 -#define HIGH_LEVEL 31 - -// -// Used to contain PFNs and PFN counts -// -typedef ULONG PFN_COUNT; -typedef ULONG PFN_NUMBER, *PPFN_NUMBER; -typedef LONG SPFN_NUMBER, *PSPFN_NUMBER; - - -typedef struct _KFLOATING_SAVE { - ULONG Dummy; -} KFLOATING_SAVE, *PKFLOATING_SAVE; - -typedef struct _KPCR_TIB { - PVOID ExceptionList; /* 00 */ - PVOID StackBase; /* 04 */ - PVOID StackLimit; /* 08 */ - PVOID SubSystemTib; /* 0C */ - _ANONYMOUS_UNION union { - PVOID FiberData; /* 10 */ - ULONG Version; /* 10 */ - } DUMMYUNIONNAME; - PVOID ArbitraryUserPointer; /* 14 */ - struct _KPCR_TIB *Self; /* 18 */ -} KPCR_TIB, *PKPCR_TIB; /* 1C */ - -#define PCR_MINOR_VERSION 1 -#define PCR_MAJOR_VERSION 1 - -typedef struct _KPCR { - KPCR_TIB Tib; /* 00 */ - struct _KPCR *Self; /* 1C */ - struct _KPRCB *Prcb; /* 20 */ - KIRQL Irql; /* 24 */ - ULONG IRR; /* 28 */ - ULONG IrrActive; /* 2C */ - ULONG IDR; /* 30 */ - PVOID KdVersionBlock; /* 34 */ - PUSHORT IDT; /* 38 */ - PUSHORT GDT; /* 3C */ - struct _KTSS *TSS; /* 40 */ - USHORT MajorVersion; /* 44 */ - USHORT MinorVersion; /* 46 */ - KAFFINITY SetMember; /* 48 */ - ULONG StallScaleFactor; /* 4C */ - UCHAR SpareUnused; /* 50 */ - UCHAR Number; /* 51 */ -} KPCR, *PKPCR; /* 54 */ - -#define KeGetPcr() PCR - -#define YieldProcessor() __asm__ __volatile__("nop"); - -FORCEINLINE -ULONG -NTAPI -KeGetCurrentProcessorNumber(VOID) -{ - ULONG Number; - __asm__ __volatile__ ( - "lwz %0, %c1(12)\n" - : "=r" (Number) - : "i" (FIELD_OFFSET(KPCR, Number)) - ); - return Number; -} - -NTHALAPI -VOID -FASTCALL -KfLowerIrql( - IN KIRQL NewIrql); -#define KeLowerIrql(a) KfLowerIrql(a) - -NTHALAPI -KIRQL -FASTCALL -KfRaiseIrql( - IN KIRQL NewIrql); -#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) - -NTHALAPI -KIRQL -NTAPI -KeRaiseIrqlToDpcLevel(VOID); - -NTHALAPI -KIRQL -NTAPI -KeRaiseIrqlToSynchLevel(VOID); - - - -#elif defined(_M_MIPS) -#error MIPS Headers are totally incorrect - -// -// Used to contain PFNs and PFN counts -// -typedef ULONG PFN_COUNT; -typedef ULONG PFN_NUMBER, *PPFN_NUMBER; -typedef LONG SPFN_NUMBER, *PSPFN_NUMBER; - -#define PASSIVE_LEVEL 0 -#define APC_LEVEL 1 -#define DISPATCH_LEVEL 2 -#define PROFILE_LEVEL 27 -#define IPI_LEVEL 29 -#define HIGH_LEVEL 31 - -typedef struct _KPCR { - struct _KPRCB *Prcb; /* 20 */ - KIRQL Irql; /* 24 */ - ULONG IRR; /* 28 */ - ULONG IDR; /* 30 */ -} KPCR, *PKPCR; - -#define KeGetPcr() PCR - -typedef struct _KFLOATING_SAVE { -} KFLOATING_SAVE, *PKFLOATING_SAVE; - -static __inline -ULONG -NTAPI -KeGetCurrentProcessorNumber(VOID) -{ - return 0; -} - -#define YieldProcessor() __asm__ __volatile__("nop"); - -#define KeLowerIrql(a) KfLowerIrql(a) -#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) - -NTKERNELAPI -VOID -NTAPI -KfLowerIrql( - IN KIRQL NewIrql); - -NTKERNELAPI -KIRQL -NTAPI -KfRaiseIrql( - IN KIRQL NewIrql); - -NTKERNELAPI -KIRQL -NTAPI -KeRaiseIrqlToDpcLevel(VOID); - -NTKERNELAPI -KIRQL -NTAPI -KeRaiseIrqlToSynchLevel(VOID); - - -#elif defined(_M_ARM) -#include <armddk.h> -#else -#error Unknown Architecture -#endif /****************************************************************************** * Memory manager Types * @@ -10169,6 +9608,566 @@ /****************************************************************************** * Kernel Functions * ******************************************************************************/ +#if defined(_M_IX86) +/** Kernel definitions for x86 **/ + +/* Interrupt request levels */ +#define PASSIVE_LEVEL 0 +#define LOW_LEVEL 0 +#define APC_LEVEL 1 +#define DISPATCH_LEVEL 2 +#define CMCI_LEVEL 5 +#define PROFILE_LEVEL 27 +#define CLOCK1_LEVEL 28 +#define CLOCK2_LEVEL 28 +#define IPI_LEVEL 29 +#define POWER_LEVEL 30 +#define HIGH_LEVEL 31 +#define CLOCK_LEVEL CLOCK2_LEVEL + +#define KIP0PCRADDRESS 0xffdff000 +#define KI_USER_SHARED_DATA 0xffdf0000 +#define SharedUserData ((KUSER_SHARED_DATA * CONST)KI_USER_SHARED_DATA) + +#define PAGE_SIZE 0x1000 +#define PAGE_SHIFT 12L +#define KeGetDcacheFillSize() 1L + +#define EFLAG_SIGN 0x8000 +#define EFLAG_ZERO 0x4000 +#define EFLAG_SELECT (EFLAG_SIGN | EFLAG_ZERO) + +#define RESULT_NEGATIVE ((EFLAG_SIGN & ~EFLAG_ZERO) & EFLAG_SELECT) +#define RESULT_ZERO ((~EFLAG_SIGN & EFLAG_ZERO) & EFLAG_SELECT) +#define RESULT_POSITIVE ((~EFLAG_SIGN & ~EFLAG_ZERO) & EFLAG_SELECT) + + +typedef struct _KFLOATING_SAVE { + ULONG ControlWord; + ULONG StatusWord; + ULONG ErrorOffset; + ULONG ErrorSelector; + ULONG DataOffset; + ULONG DataSelector; + ULONG Cr0NpxState; + ULONG Spare1; +} KFLOATING_SAVE, *PKFLOATING_SAVE; + +extern NTKERNELAPI volatile KSYSTEM_TIME KeTickCount; + +#define YieldProcessor _mm_pause + +FORCEINLINE +VOID +KeMemoryBarrier(VOID) +{ + LONG Barrier, *Dummy = &Barrier; + UNREFERENCED_LOCAL_VARIABLE(Dummy); + +#if defined(__GNUC__) + __asm__ __volatile__ ("xchg %%eax, %0" : : "m" (Barrier) : "%eax"); +#elif defined(_MSC_VER) + __asm xchg [Barrier], eax +#endif +} + +#define KeMemoryBarrierWithoutFence() _ReadWriteBarrier() + +_IRQL_requires_max_(HIGH_LEVEL) +_IRQL_saves_ +NTHALAPI +KIRQL +NTAPI +KeGetCurrentIrql(VOID); + +_IRQL_requires_max_(HIGH_LEVEL) +NTHALAPI +VOID +FASTCALL +KfLowerIrql( + _In_ _IRQL_restores_ _Notliteral_ KIRQL NewIrql); +#define KeLowerIrql(a) KfLowerIrql(a) + +_IRQL_requires_max_(HIGH_LEVEL) +_IRQL_raises_(NewIrql) +_IRQL_saves_ +NTHALAPI +KIRQL +FASTCALL +KfRaiseIrql( + _In_ KIRQL NewIrql); +#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) + +_IRQL_requires_max_(DISPATCH_LEVEL) +_IRQL_saves_ +_IRQL_raises_(DISPATCH_LEVEL) +NTHALAPI +KIRQL +NTAPI +KeRaiseIrqlToDpcLevel(VOID); + +NTHALAPI +KIRQL +NTAPI +KeRaiseIrqlToSynchLevel(VOID); + +_Requires_lock_not_held_(*SpinLock) +_Acquires_lock_(*SpinLock) +_IRQL_requires_max_(DISPATCH_LEVEL) +_IRQL_saves_ +_IRQL_raises_(DISPATCH_LEVEL) +NTHALAPI +KIRQL +FASTCALL +KfAcquireSpinLock( + _Inout_ PKSPIN_LOCK SpinLock); +#define KeAcquireSpinLock(a,b) *(b) = KfAcquireSpinLock(a) + +_Requires_lock_held_(*SpinLock) +_Releases_lock_(*SpinLock) +_IRQL_requires_(DISPATCH_LEVEL) +NTHALAPI +VOID +FASTCALL +KfReleaseSpinLock( + _Inout_ PKSPIN_LOCK SpinLock, + _In_ _IRQL_restores_ KIRQL NewIrql); +#define KeReleaseSpinLock(a,b) KfReleaseSpinLock(a,b) + +_Requires_lock_not_held_(*SpinLock) +_Acquires_lock_(*SpinLock) +_IRQL_requires_min_(DISPATCH_LEVEL) +NTKERNELAPI +VOID +FASTCALL +KefAcquireSpinLockAtDpcLevel( + _Inout_ PKSPIN_LOCK SpinLock); +#define KeAcquireSpinLockAtDpcLevel(SpinLock) KefAcquireSpinLockAtDpcLevel(SpinLock) + +_Requires_lock_held_(*SpinLock) +_Releases_lock_(*SpinLock) +_IRQL_requires_min_(DISPATCH_LEVEL) +NTKERNELAPI +VOID +FASTCALL +KefReleaseSpinLockFromDpcLevel( + _Inout_ PKSPIN_LOCK SpinLock); +#define KeReleaseSpinLockFromDpcLevel(SpinLock) KefReleaseSpinLockFromDpcLevel(SpinLock) + +NTSYSAPI +PKTHREAD +NTAPI +KeGetCurrentThread(VOID); + +_Always_(_Post_satisfies_(return<=0)) +_Must_inspect_result_ +_IRQL_requires_max_(DISPATCH_LEVEL) +_Kernel_float_saved_ +_At_(*FloatSave, _Kernel_requires_resource_not_held_(FloatState) _Kernel_acquires_resource_(FloatState)) +NTKERNELAPI +NTSTATUS +NTAPI +KeSaveFloatingPointState( + _Out_ PKFLOATING_SAVE FloatSave); + +_Success_(1) +_Kernel_float_restored_ +_At_(*FloatSave, _Kernel_requires_resource_held_(FloatState) _Kernel_releases_resource_(FloatState)) +NTKERNELAPI +NTSTATUS +NTAPI +KeRestoreFloatingPointState( + _In_ PKFLOATING_SAVE FloatSave); + +/* VOID + * KeFlushIoBuffers( + * IN PMDL Mdl, + * IN BOOLEAN ReadOperation, + * IN BOOLEAN DmaOperation) + */ +#define KeFlushIoBuffers(_Mdl, _ReadOperation, _DmaOperation) + +/* x86 and x64 performs a 0x2C interrupt */ +#define DbgRaiseAssertionFailure __int2c + +FORCEINLINE +VOID +_KeQueryTickCount( + OUT PLARGE_INTEGER CurrentCount) +{ + for (;;) { +#ifdef NONAMELESSUNION + CurrentCount->s.HighPart = KeTickCount.High1Time; + CurrentCount->s.LowPart = KeTickCount.LowPart; + if (CurrentCount->s.HighPart == KeTickCount.High2Time) break; +#else + CurrentCount->HighPart = KeTickCount.High1Time; + CurrentCount->LowPart = KeTickCount.LowPart; + if (CurrentCount->HighPart == KeTickCount.High2Time) break; +#endif + YieldProcessor(); + } +} +#define KeQueryTickCount(CurrentCount) _KeQueryTickCount(CurrentCount) + + + + + +#elif defined(_M_AMD64) +/** Kernel definitions for AMD64 **/ + +/* Interrupt request levels */ +#define PASSIVE_LEVEL 0 +#define LOW_LEVEL 0 +#define APC_LEVEL 1 +#define DISPATCH_LEVEL 2 +#define CMCI_LEVEL 5 +#define CLOCK_LEVEL 13 +#define IPI_LEVEL 14 +#define DRS_LEVEL 14 +#define POWER_LEVEL 14 +#define PROFILE_LEVEL 15 +#define HIGH_LEVEL 15 + +#define KI_USER_SHARED_DATA 0xFFFFF78000000000ULL +#define SharedUserData ((PKUSER_SHARED_DATA const)KI_USER_SHARED_DATA) +#define SharedInterruptTime (KI_USER_SHARED_DATA + 0x8) +#define SharedSystemTime (KI_USER_SHARED_DATA + 0x14) +#define SharedTickCount (KI_USER_SHARED_DATA + 0x320) + +#define PAGE_SIZE 0x1000 +#define PAGE_SHIFT 12L + +#define EFLAG_SIGN 0x8000 +#define EFLAG_ZERO 0x4000 +#define EFLAG_SELECT (EFLAG_SIGN | EFLAG_ZERO) + +typedef struct _KFLOATING_SAVE { + ULONG Dummy; +} KFLOATING_SAVE, *PKFLOATING_SAVE; + +typedef XSAVE_FORMAT XMM_SAVE_AREA32, *PXMM_SAVE_AREA32; + +#define KeQueryInterruptTime() \ + (*(volatile ULONG64*)SharedInterruptTime) + +#define KeQuerySystemTime(CurrentCount) \ + *(ULONG64*)(CurrentCount) = *(volatile ULONG64*)SharedSystemTime + +#define KeQueryTickCount(CurrentCount) \ + *(ULONG64*)(CurrentCount) = *(volatile ULONG64*)SharedTickCount + +#define KeGetDcacheFillSize() 1L + +#define YieldProcessor _mm_pause +#define MemoryBarrier __faststorefence +#define FastFence __faststorefence +#define LoadFence _mm_lfence +#define MemoryFence _mm_mfence +#define StoreFence _mm_sfence +#define LFENCE_ACQUIRE() LoadFence() + +FORCEINLINE +VOID +KeMemoryBarrier(VOID) +{ + // FIXME: Do we really need lfence after the __faststorefence ? + FastFence(); + LFENCE_ACQUIRE(); +} + +#define KeMemoryBarrierWithoutFence() _ReadWriteBarrier() + +FORCEINLINE +KIRQL +KeGetCurrentIrql(VOID) +{ + return (KIRQL)__readcr8(); +} + +FORCEINLINE +VOID +KeLowerIrql(IN KIRQL NewIrql) +{ + ASSERT((KIRQL)__readcr8() >= NewIrql); + __writecr8(NewIrql); +} + +FORCEINLINE +KIRQL +KfRaiseIrql(IN KIRQL NewIrql) +{ + KIRQL OldIrql; + + OldIrql = (KIRQL)__readcr8(); + ASSERT(OldIrql <= NewIrql); + __writecr8(NewIrql); + return OldIrql; +} +#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) + +FORCEINLINE +KIRQL +KeRaiseIrqlToDpcLevel(VOID) +{ + return KfRaiseIrql(DISPATCH_LEVEL); +} + +FORCEINLINE +KIRQL +KeRaiseIrqlToSynchLevel(VOID) +{ + return KfRaiseIrql(12); // SYNCH_LEVEL = IPI_LEVEL - 2 +} + +FORCEINLINE +PKTHREAD +KeGetCurrentThread(VOID) +{ + return (struct _KTHREAD *)__readgsqword(0x188); +} + +FORCEINLINE +NTSTATUS +KeSaveFloatingPointState(PVOID FloatingState) +{ + UNREFERENCED_PARAMETER(FloatingState); + return STATUS_SUCCESS; +} + +FORCEINLINE +NTSTATUS +KeRestoreFloatingPointState(PVOID FloatingState) +{ + UNREFERENCED_PARAMETER(FloatingState); + return STATUS_SUCCESS; +} + +/* VOID + * KeFlushIoBuffers( + * IN PMDL Mdl, + * IN BOOLEAN ReadOperation, + * IN BOOLEAN DmaOperation) + */ +#define KeFlushIoBuffers(_Mdl, _ReadOperation, _DmaOperation) + +/* x86 and x64 performs a 0x2C interrupt */ +#define DbgRaiseAssertionFailure __int2c + +#elif defined(_M_IA64) +/** Kernel definitions for IA64 **/ + +/* Interrupt request levels */ +#define PASSIVE_LEVEL 0 +#define LOW_LEVEL 0 +#define APC_LEVEL 1 +#define DISPATCH_LEVEL 2 +#define CMC_LEVEL 3 +#define DEVICE_LEVEL_BASE 4 +#define PC_LEVEL 12 +#define IPI_LEVEL 14 +#define DRS_LEVEL 14 +#define CLOCK_LEVEL 13 +#define POWER_LEVEL 15 +#define PROFILE_LEVEL 15 +#define HIGH_LEVEL 15 + +#define KI_USER_SHARED_DATA ((ULONG_PTR)(KADDRESS_BASE + 0xFFFE0000)) +extern volatile LARGE_INTEGER KeTickCount; + +#define PAUSE_PROCESSOR __yield(); + +FORCEINLINE +VOID +KeFlushWriteBuffer(VOID) +{ + __mf (); + return; +} + +NTSYSAPI +PKTHREAD +NTAPI +KeGetCurrentThread(VOID); + + +#elif defined(_M_PPC) + +/* Interrupt request levels */ +#define PASSIVE_LEVEL 0 +#define LOW_LEVEL 0 +#define APC_LEVEL 1 +#define DISPATCH_LEVEL 2 +#define PROFILE_LEVEL 27 +#define CLOCK1_LEVEL 28 +#define CLOCK2_LEVEL 28 +#define IPI_LEVEL 29 +#define POWER_LEVEL 30 +#define HIGH_LEVEL 31 + +// +// Used to contain PFNs and PFN counts +// +typedef ULONG PFN_COUNT; +typedef ULONG PFN_NUMBER, *PPFN_NUMBER; +typedef LONG SPFN_NUMBER, *PSPFN_NUMBER; + + +typedef struct _KFLOATING_SAVE { + ULONG Dummy; +} KFLOATING_SAVE, *PKFLOATING_SAVE; + +typedef struct _KPCR_TIB { + PVOID ExceptionList; /* 00 */ + PVOID StackBase; /* 04 */ + PVOID StackLimit; /* 08 */ + PVOID SubSystemTib; /* 0C */ + _ANONYMOUS_UNION union { + PVOID FiberData; /* 10 */ + ULONG Version; /* 10 */ + } DUMMYUNIONNAME; + PVOID ArbitraryUserPointer; /* 14 */ + struct _KPCR_TIB *Self; /* 18 */ +} KPCR_TIB, *PKPCR_TIB; /* 1C */ + +#define PCR_MINOR_VERSION 1 +#define PCR_MAJOR_VERSION 1 + +typedef struct _KPCR { + KPCR_TIB Tib; /* 00 */ + struct _KPCR *Self; /* 1C */ + struct _KPRCB *Prcb; /* 20 */ + KIRQL Irql; /* 24 */ + ULONG IRR; /* 28 */ + ULONG IrrActive; /* 2C */ + ULONG IDR; /* 30 */ + PVOID KdVersionBlock; /* 34 */ + PUSHORT IDT; /* 38 */ + PUSHORT GDT; /* 3C */ + struct _KTSS *TSS; /* 40 */ + USHORT MajorVersion; /* 44 */ + USHORT MinorVersion; /* 46 */ + KAFFINITY SetMember; /* 48 */ + ULONG StallScaleFactor; /* 4C */ + UCHAR SpareUnused; /* 50 */ + UCHAR Number; /* 51 */ +} KPCR, *PKPCR; /* 54 */ + +#define KeGetPcr() PCR + +#define YieldProcessor() __asm__ __volatile__("nop"); + +FORCEINLINE +ULONG +NTAPI +KeGetCurrentProcessorNumber(VOID) +{ + ULONG Number; + __asm__ __volatile__ ( + "lwz %0, %c1(12)\n" + : "=r" (Number) + : "i" (FIELD_OFFSET(KPCR, Number)) + ); + return Number; +} + +NTHALAPI +VOID +FASTCALL +KfLowerIrql( + IN KIRQL NewIrql); +#define KeLowerIrql(a) KfLowerIrql(a) + +NTHALAPI +KIRQL +FASTCALL +KfRaiseIrql( + IN KIRQL NewIrql); +#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) + +NTHALAPI +KIRQL +NTAPI +KeRaiseIrqlToDpcLevel(VOID); + +NTHALAPI +KIRQL +NTAPI +KeRaiseIrqlToSynchLevel(VOID); + + + +#elif defined(_M_MIPS) +#error MIPS Headers are totally incorrect + +// +// Used to contain PFNs and PFN counts +// +typedef ULONG PFN_COUNT; +typedef ULONG PFN_NUMBER, *PPFN_NUMBER; +typedef LONG SPFN_NUMBER, *PSPFN_NUMBER; + +#define PASSIVE_LEVEL 0 +#define APC_LEVEL 1 +#define DISPATCH_LEVEL 2 +#define PROFILE_LEVEL 27 +#define IPI_LEVEL 29 +#define HIGH_LEVEL 31 + +typedef struct _KPCR { + struct _KPRCB *Prcb; /* 20 */ + KIRQL Irql; /* 24 */ + ULONG IRR; /* 28 */ + ULONG IDR; /* 30 */ +} KPCR, *PKPCR; + +#define KeGetPcr() PCR + +typedef struct _KFLOATING_SAVE { +} KFLOATING_SAVE, *PKFLOATING_SAVE; + +static __inline +ULONG +NTAPI +KeGetCurrentProcessorNumber(VOID) +{ + return 0; +} + +#define YieldProcessor() __asm__ __volatile__("nop"); + +#define KeLowerIrql(a) KfLowerIrql(a) +#define KeRaiseIrql(a,b) *(b) = KfRaiseIrql(a) + +NTKERNELAPI +VOID +NTAPI +KfLowerIrql( + IN KIRQL NewIrql); + +NTKERNELAPI +KIRQL +NTAPI +KfRaiseIrql( + IN KIRQL NewIrql); + +NTKERNELAPI +KIRQL +NTAPI +KeRaiseIrqlToDpcLevel(VOID); + +NTKERNELAPI +KIRQL +NTAPI +KeRaiseIrqlToSynchLevel(VOID); + + +#elif defined(_M_ARM) +#include <armddk.h> +#else +#error Unknown Architecture +#endif NTKERNELAPI VOID Modified: trunk/reactos/include/ndk/mmtypes.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/mmtypes.h?rev=…
============================================================================== --- trunk/reactos/include/ndk/mmtypes.h [iso-8859-1] (original) +++ trunk/reactos/include/ndk/mmtypes.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -66,12 +66,12 @@ // // Flags for ProcessExecutionOptions // -#define MEM_EXECUTE_OPTION_DISABLE 0x1 +#define MEM_EXECUTE_OPTION_DISABLE 0x1 #define MEM_EXECUTE_OPTION_ENABLE 0x2 #define MEM_EXECUTE_OPTION_DISABLE_THUNK_EMULATION 0x4 #define MEM_EXECUTE_OPTION_PERMANENT 0x8 #define MEM_EXECUTE_OPTION_EXECUTE_DISPATCH_ENABLE 0x10 -#define MEM_EXECUTE_OPTION_IMAGE_DISPATCH_ENABLE 0x20 +#define MEM_EXECUTE_OPTION_IMAGE_DISPATCH_ENABLE 0x20 #define MEM_EXECUTE_OPTION_VALID_FLAGS 0x3F #ifndef NTOS_MODE_USER @@ -989,6 +989,10 @@ ULONG NumberOfThunks; } DRIVER_SPECIFIED_VERIFIER_THUNKS, *PDRIVER_SPECIFIED_VERIFIER_THUNKS; +#ifdef __cplusplus +extern "C" { +#endif + // // Default heap size values. For user mode, these values are copied to a new // process's PEB by the kernel in MmCreatePeb. In kernel mode, RtlCreateHeap @@ -1007,6 +1011,10 @@ // extern POBJECT_TYPE NTSYSAPI MmSectionObjectType; +#ifdef __cplusplus +}; // extern "C" +#endif + #endif // !NTOS_MODE_USER #endif // _MMTYPES_H Modified: trunk/reactos/include/ndk/obfuncs.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/obfuncs.h?rev=…
============================================================================== --- trunk/reactos/include/ndk/obfuncs.h [iso-8859-1] (original) +++ trunk/reactos/include/ndk/obfuncs.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -25,6 +25,10 @@ #include <umtypes.h> #include <pstypes.h> #include <obtypes.h> + +#ifdef __cplusplus +extern "C" { +#endif #ifndef NTOS_MODE_USER @@ -576,4 +580,8 @@ #endif /* NTOS_MODE_USER */ +#ifdef __cplusplus +}; // extern "C" #endif + +#endif Modified: trunk/reactos/include/ndk/rtlfuncs.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/rtlfuncs.h?rev…
============================================================================== --- trunk/reactos/include/ndk/rtlfuncs.h [iso-8859-1] (original) +++ trunk/reactos/include/ndk/rtlfuncs.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -3259,6 +3259,7 @@ _In_ ULONG MaximumResponseLength ); +#undef DbgBreakPoint VOID NTAPI DbgBreakPoint( Modified: trunk/reactos/include/psdk/sal.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/sal.h?rev=585…
============================================================================== --- trunk/reactos/include/psdk/sal.h [iso-8859-1] (original) +++ trunk/reactos/include/psdk/sal.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -1090,7 +1090,6 @@ #define _In_function_class_(x) _In_function_class_(#x) #define _Called_from_function_class_(x) _In_function_class_(x) -#define _Function_class_(x) _SA_annotes1(SAL_functionClassNew, #x) #else // ] [ !_PREFAST_ Modified: trunk/reactos/include/psdk/sal_old.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/sal_old.h?rev…
============================================================================== --- trunk/reactos/include/psdk/sal_old.h [iso-8859-1] (original) +++ trunk/reactos/include/psdk/sal_old.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -53,7 +53,6 @@ #define __inner_fallthrough_dec __inline __nothrow void __FallThrough() {} #define __inner_override __declspec("__override") #define __inner_success(expr) __declspec("SAL_success("SPECSTRINGIZE(expr)")") -#define __inner_typefix(ctype) __declspec("SAL_typefix("SPECSTRINGIZE(ctype)")") #define __maybenull __declspec("SAL_maybenull") #define __maybereadonly __declspec("SAL_maybereadonly") #define __maybevalid __declspec("SAL_maybevalid") Modified: trunk/reactos/include/xdk/kefuncs.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/xdk/kefuncs.h?rev=…
============================================================================== --- trunk/reactos/include/xdk/kefuncs.h [iso-8859-1] (original) +++ trunk/reactos/include/xdk/kefuncs.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -2,6 +2,21 @@ * Kernel Functions * ******************************************************************************/ $if (_WDMDDK_) +#if defined(_M_IX86) +$include(x86/ke.h) +#elif defined(_M_AMD64) +$include(amd64/ke.h) +#elif defined(_M_IA64) +$include(ia64/ke.h) +#elif defined(_M_PPC) +$include(ppc/ke.h) +#elif defined(_M_MIPS) +$include(mips/ke.h) +#elif defined(_M_ARM) +$include(arm/ke.h) +#else +#error Unknown Architecture +#endif NTKERNELAPI VOID Modified: trunk/reactos/include/xdk/ketypes.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/xdk/ketypes.h?rev=…
============================================================================== --- trunk/reactos/include/xdk/ketypes.h [iso-8859-1] (original) +++ trunk/reactos/include/xdk/ketypes.h [iso-8859-1] Sat Mar 23 21:57:17 2013 @@ -1237,21 +1237,3 @@ $endif (_NTIFS_) -$if (_WDMDDK_) -#if defined(_M_IX86) -$include(x86/ke.h) -#elif defined(_M_AMD64) -$include(amd64/ke.h) -#elif defined(_M_IA64) -$include(ia64/ke.h) -#elif defined(_M_PPC) -$include(ppc/ke.h) -#elif defined(_M_MIPS) -$include(mips/ke.h) -#elif defined(_M_ARM) -$include(arm/ke.h) -#else -#error Unknown Architecture -#endif -$endif (_WDMDDK_) -
11 years, 9 months
1
0
0
0
[tkreuzer] 58597: [WIN32K] - Fix amd64 build - Add an overflow check, ASSERT success when unmapping a section view
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat Mar 23 21:50:27 2013 New Revision: 58597 URL:
http://svn.reactos.org/svn/reactos?rev=58597&view=rev
Log: [WIN32K] - Fix amd64 build - Add an overflow check, ASSERT success when unmapping a section view Modified: trunk/reactos/win32ss/gdi/eng/floatobj.h trunk/reactos/win32ss/gdi/eng/mapping.c Modified: trunk/reactos/win32ss/gdi/eng/floatobj.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/eng/floatobj.h…
============================================================================== --- trunk/reactos/win32ss/gdi/eng/floatobj.h [iso-8859-1] (original) +++ trunk/reactos/win32ss/gdi/eng/floatobj.h [iso-8859-1] Sat Mar 23 21:50:27 2013 @@ -80,9 +80,9 @@ #define FLOATOBJ_16 16. #define FLOATOBJ_1_16 (1./16.) -#define gef0 FLOATOBJ_0 -#define gef1 FLOATOBJ_1 -#define gef16 FLOATOBJ_16 +static const FLOATOBJ gef0 = 0.; +static const FLOATOBJ gef1 = 1.; +static const FLOATOBJ gef16 = 16.; #define FLOATOBJ_Set0(fo) *(fo) = 0; #define FLOATOBJ_Set1(fo) *(fo) = 1; Modified: trunk/reactos/win32ss/gdi/eng/mapping.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/eng/mapping.c?…
============================================================================== --- trunk/reactos/win32ss/gdi/eng/mapping.c [iso-8859-1] (original) +++ trunk/reactos/win32ss/gdi/eng/mapping.c [iso-8859-1] Sat Mar 23 21:50:27 2013 @@ -25,6 +25,13 @@ LARGE_INTEGER liSectionOffset; PVOID pvBaseAddress; NTSTATUS Status; + + /* Check if the size is ok (for 64 bit) */ + if (cjSize > ULONG_MAX) + { + DPRINT1("chSize out of range: 0x%Id\n", cjSize); + return NULL; + } /* Align the offset at allocation granularity and compensate for the size */ liSectionOffset.QuadPart = cjOffset & ~(MM_ALLOCATION_GRANULARITY - 1); @@ -48,7 +55,7 @@ } /* Secure the section memory */ - *phSecure = EngSecureMem(pvBaseAddress, cjSize); + *phSecure = EngSecureMem(pvBaseAddress, (ULONG)cjSize); if (!*phSecure) { ZwUnmapViewOfSection(NtCurrentProcess(), pvBaseAddress); @@ -76,10 +83,7 @@ /* Unmap the section view */ Status = MmUnmapViewOfSection(PsGetCurrentProcess(), pvBits); - if (!NT_SUCCESS(Status)) - { - DPRINT1("Could not unmap section view!\n"); - } + ASSERT(NT_SUCCESS(Status)); }
11 years, 9 months
1
0
0
0
[tkreuzer] 58596: [WINDOWSCODECS] Fix amd64 build
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat Mar 23 21:46:05 2013 New Revision: 58596 URL:
http://svn.reactos.org/svn/reactos?rev=58596&view=rev
Log: [WINDOWSCODECS] Fix amd64 build Modified: trunk/reactos/dll/win32/windowscodecs/jpegformat.c Modified: trunk/reactos/dll/win32/windowscodecs/jpegformat.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/jp…
============================================================================== --- trunk/reactos/dll/win32/windowscodecs/jpegformat.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/windowscodecs/jpegformat.c [iso-8859-1] Sat Mar 23 21:46:05 2013 @@ -29,7 +29,7 @@ //#include <stdarg.h> #include <stdio.h> //#include <string.h> -//#include <setjmp.h> +#include <setjmp.h> #ifdef SONAME_LIBJPEG /* This is a hack, so jpeglib.h does not redefine INT32 and the like*/
11 years, 9 months
1
0
0
0
[tkreuzer] 58595: [FREELDR] Fix amd64 build
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat Mar 23 21:20:00 2013 New Revision: 58595 URL:
http://svn.reactos.org/svn/reactos?rev=58595&view=rev
Log: [FREELDR] Fix amd64 build Modified: trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt trunk/reactos/boot/freeldr/freeldr/arch/amd64/entry.S Modified: trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/CMake…
============================================================================== --- trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt [iso-8859-1] Sat Mar 23 21:20:00 2013 @@ -135,6 +135,7 @@ arch/i386/hwapm.c arch/i386/hwdisk.c arch/i386/hwpci.c + arch/i386/i386bug.c arch/i386/i386rtl.c arch/i386/i386disk.c arch/i386/i386vid.c Modified: trunk/reactos/boot/freeldr/freeldr/arch/amd64/entry.S URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/arch/…
============================================================================== --- trunk/reactos/boot/freeldr/freeldr/arch/amd64/entry.S [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/arch/amd64/entry.S [iso-8859-1] Sat Mar 23 21:20:00 2013 @@ -50,6 +50,15 @@ jmp stop nop nop + + +PUBLIC Reboot +Reboot: + /* Set the function ID */ + mov bx, FNID_Reboot + + /* Switch to real mode (We don't return) */ + jmp SwitchToReal /* Internal function for realmode calls
11 years, 9 months
1
0
0
0
[tkreuzer] 58594: [HAL] Fix the mess that was our hal CMakeLists.txt. Seperate all components into their own cmake files,
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat Mar 23 21:15:28 2013 New Revision: 58594 URL:
http://svn.reactos.org/svn/reactos?rev=58594&view=rev
Log: [HAL] Fix the mess that was our hal CMakeLists.txt. Seperate all components into their own cmake files, Added: trunk/reactos/hal/halx86/acpi.cmake (with props) trunk/reactos/hal/halx86/apic.cmake (with props) trunk/reactos/hal/halx86/generic.cmake (with props) trunk/reactos/hal/halx86/legacy.cmake (with props) trunk/reactos/hal/halx86/minihal.cmake (with props) trunk/reactos/hal/halx86/pcidata.cmake (with props) trunk/reactos/hal/halx86/pic.cmake (with props) trunk/reactos/hal/halx86/up.cmake (with props) Modified: trunk/reactos/hal/halx86/CMakeLists.txt Modified: trunk/reactos/hal/halx86/CMakeLists.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/CMakeLists.txt?…
============================================================================== --- trunk/reactos/hal/halx86/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/hal/halx86/CMakeLists.txt [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -7,263 +7,75 @@ include ${REACTOS_SOURCE_DIR}/ntoskrnl/include) -list(APPEND HAL_GENERIC_SOURCE - generic/beep.c - generic/cmos.c - generic/display.c - generic/dma.c - generic/drive.c - generic/halinit.c - generic/memory.c - generic/misc.c - generic/reboot.c - generic/sysinfo.c - generic/usage.c) +function(add_hal _halname) + cmake_parse_arguments(_haldata "" "" "SOURCES;COMPONENTS" ${ARGN}) + + # Handle the spec file for the dll name + spec2def(${_halname}.dll ../hal.spec ADD_IMPORTLIB) + + # Create the actual target + if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) + foreach(_component ${_haldata_COMPONENTS}) + list(APPEND _haldata_SOURCES "$<TARGET_OBJECTS:lib_hal_${_component}>") + endforeach() + add_library(${_halname} SHARED + ${_haldata_SOURCES} + ${CMAKE_CURRENT_BINARY_DIR}/hal.def) + else() + foreach(_component ${_haldata_COMPONENTS}) + list(APPEND _haldata_LIBS "lib_hal_${_component}") + endforeach() + add_library(${_halname} SHARED + ${_haldata_SOURCES} + ${CMAKE_CURRENT_BINARY_DIR}/hal.def) + target_link_libraries(${_halname} ${_haldata_LIBS}) + endif() + + target_link_libraries(${_halname} libcntpr) + add_importlibs(${_halname} ntoskrnl) + #add_pch(${_halname} include/hal.h) + add_dependencies(${_halname} psdk bugcodes asm) + set_entrypoint(${_halname} HalInitSystem 8) + set_subsystem(${_halname} native) + set_image_base(${_halname} 0x00010000) + add_cd_file(TARGET ${_halname} DESTINATION reactos/system32 NO_CAB FOR all) + if(MSVC) + add_target_link_flags(${_halname} "/ignore:4216 /ignore:4078") + endif() +endfunction() + +# The components +include(generic.cmake) +include(acpi.cmake) +include(apic.cmake) if(ARCH STREQUAL "i386") - list(APPEND HAL_GENERIC_SOURCE - generic/bios.c - generic/portio.c) -endif() - -if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(lib_hal_generic OBJECT ${HAL_GENERIC_SOURCE}) -else() - add_library(lib_hal_generic ${HAL_GENERIC_SOURCE}) -endif() - -add_dependencies(lib_hal_generic asm) -add_pch(lib_hal_generic include/hal.h) - -if(ARCH STREQUAL "i386") - - ##################################### - # Generate the pcidata source files in the x86 build - # - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.c ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.h - COMMAND native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_classes.ids ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.c ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.h ClassTable INIT_FUNCTION ${CMAKE_CURRENT_SOURCE_DIR}/include/hal.h - DEPENDS native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_classes.ids) - - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.c ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.h - COMMAND native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_vendors.ids ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.c ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.h VendorTable INIT_FUNCTION ${CMAKE_CURRENT_SOURCE_DIR}/include/hal.h - DEPENDS native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_vendors.ids) - ##################################### - - list(APPEND HAL_LEGACY_SOURCE - legacy/bus/bushndlr.c - legacy/bus/cmosbus.c - legacy/bus/isabus.c - legacy/bus/pcibus.c - ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.c - ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.c - legacy/bus/sysbus.c - legacy/bussupp.c - legacy/halpnpdd.c - legacy/halpcat.c) - - if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(lib_hal_legacy OBJECT ${HAL_LEGACY_SOURCE}) - else() - add_library(lib_hal_legacy ${HAL_LEGACY_SOURCE}) - endif() - - #add_pch(lib_hal_legacy include/hal.h) - - if(MSVC OR (NOT CMAKE_VERSION VERSION_GREATER 2.8.7)) - target_link_libraries(lib_hal_legacy lib_hal_generic) - endif() - -endif() - -list(APPEND HAL_ACPI_SOURCE - acpi/halacpi.c - acpi/halpnpdd.c - acpi/busemul.c - legacy/bus/pcibus.c) - -if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(lib_hal_acpi OBJECT ${HAL_ACPI_SOURCE}) -else() - add_library(lib_hal_acpi ${HAL_ACPI_SOURCE}) -endif() -#add_pch(lib_hal_acpi include/hal.h) - -if(MSVC OR (NOT CMAKE_VERSION VERSION_GREATER 2.8.7)) - target_link_libraries(lib_hal_acpi lib_hal_generic) -endif() - -list(APPEND HAL_UP_SOURCE - generic/spinlock.c - up/processor.c) - -if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(lib_hal_up OBJECT ${HAL_UP_SOURCE}) -endif() - -list(APPEND HAL_APIC_ASM_SOURCE - apic/apictrap.S - apic/tsccal.S) - -list(APPEND HAL_APIC_SOURCE - apic/apic.c - apic/apictimer.c - apic/halinit_apic.c - apic/rtctimer.c - apic/tsc.c) - -if(ARCH STREQUAL "i386") - list(APPEND HAL_PIC_ASM_SOURCE - generic/systimer.S - generic/trap.S) - list(APPEND HAL_PIC_SOURCE - generic/profil.c - generic/timer.c - up/halinit_up.c - up/pic.c) - - if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(lib_hal_pic OBJECT ${HAL_PIC_SOURCE} ${HAL_PIC_ASM_SOURCE}) - add_dependencies(lib_hal_pic asm) - endif() - - list(APPEND MINI_HAL_SOURCE - generic/portio.c - generic/systimer.S - legacy/bus/bushndlr.c - legacy/bus/cmosbus.c - legacy/bus/isabus.c - legacy/bus/pcibus.c - legacy/bus/sysbus.c - legacy/bussupp.c - generic/beep.c - generic/bios.c - generic/cmos.c - generic/dma.c - generic/display.c - generic/drive.c - generic/misc.c - generic/profil.c - generic/reboot.c - generic/spinlock.c - generic/sysinfo.c - generic/timer.c - generic/usage.c - up/halinit_mini.c - up/pic.c - up/processor.c) - - spec2def(hal.dll ../hal.spec ADD_IMPORTLIB) + include(pcidata.cmake) + include(legacy.cmake) + include(up.cmake) + include(pic.cmake) + include(minihal.cmake) # hal - if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(hal SHARED - $<TARGET_OBJECTS:lib_hal_generic> - $<TARGET_OBJECTS:lib_hal_legacy> - $<TARGET_OBJECTS:lib_hal_up> - $<TARGET_OBJECTS:lib_hal_pic> - generic/v86.S - up/halup.rc - ${CMAKE_CURRENT_BINARY_DIR}/hal.def) - else() - add_asm_files(hal_asm - ${HAL_PIC_ASM_SOURCE} - generic/v86.S) - add_library(hal SHARED - ${HAL_UP_SOURCE} - ${HAL_PIC_SOURCE} - ${hal_asm} - up/halup.rc - ${CMAKE_CURRENT_BINARY_DIR}/hal.def) - endif() + add_hal(hal SOURCES up/halup.rc COMPONENTS generic legacy up pic) + add_hal(halacpi SOURCES acpi/halacpi.rc COMPONENTS generic acpi up pic) + add_hal(halapic SOURCES acpi/halacpi.rc COMPONENTS generic legacy up apic) + add_hal(halaacpi SOURCES acpi/halacpi.rc COMPONENTS generic acpi up apic) - if(MSVC OR (NOT CMAKE_VERSION VERSION_GREATER 2.8.7)) - target_link_libraries(hal lib_hal_generic lib_hal_legacy) - endif() - target_link_libraries(hal libcntpr) - add_importlibs(hal ntoskrnl) - #add_pch(hal include/hal.h) - add_dependencies(hal psdk bugcodes asm) - set_entrypoint(hal HalInitSystem 8) - set_subsystem(hal native) - set_image_base(hal 0x00010000) - add_cd_file(TARGET hal DESTINATION reactos/system32 NO_CAB FOR all) - if(MSVC) - add_target_link_flags(hal "/ignore:4216 /ignore:4078") - endif() - - # hal acpi - spec2def(halacpi.dll ../hal.spec) - if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) - add_library(halacpi SHARED - $<TARGET_OBJECTS:lib_hal_generic> - $<TARGET_OBJECTS:lib_hal_acpi> - $<TARGET_OBJECTS:lib_hal_up> - $<TARGET_OBJECTS:lib_hal_pic> - generic/v86.S - acpi/halacpi.rc - ${CMAKE_CURRENT_BINARY_DIR}/halacpi.def) - else() - set_source_files_properties(${HAL_PIC_ASM_SOURCE} generic/v86.S PROPERTIES COMPILE_DEFINITIONS "CONFIG_ACPI") - add_asm_files(halacpi_asm ${HAL_PIC_ASM_SOURCE} generic/v86.S) - add_library(halacpi SHARED - ${HAL_UP_SOURCE} - ${HAL_PIC_SOURCE} - ${halacpi_asm} - acpi/halacpi.rc - ${CMAKE_CURRENT_BINARY_DIR}/halacpi.def) - endif() - - if(MSVC OR (NOT CMAKE_VERSION VERSION_GREATER 2.8.7)) - target_link_libraries(halacpi lib_hal_generic lib_hal_acpi) - endif() - target_link_libraries(halacpi libcntpr) - add_importlibs(halacpi ntoskrnl) - add_dependencies(halacpi psdk bugcodes asm) - set_entrypoint(halacpi HalInitSystem@8) - set_subsystem(halacpi native) - set_image_base(halacpi 0x00010000) - add_target_compile_definitions(halacpi CONFIG_ACPI) - add_cd_file(TARGET halacpi DESTINATION reactos/system32 NO_CAB FOR all) - if(MSVC) - add_target_link_flags(halacpi "/ignore:4216 /ignore:4078") - endif() - - # mini_hal - add_library(mini_hal ${MINI_HAL_SOURCE}) - add_target_compile_definitions(mini_hal _BLDR_ _MINIHAL_) - add_dependencies(mini_hal psdk bugcodes asm) + #add_hal(halmps SOURCES up/halup.rc COMPONENTS generic legacy smp pic) + #add_hal(halmacpi SOURCES acpi/halacpi.rc COMPONENTS generic acpi smp pic) + #add_hal(halmapic SOURCES acpi/halacpi.rc COMPONENTS generic legacy smp apic) + #add_hal(halmaacpi SOURCES acpi/halacpi.rc COMPONENTS generic acpi smp apic) elseif(ARCH STREQUAL "amd64") - spec2def(hal.dll ../hal.spec ADD_IMPORTLIB) - list(APPEND HAL_SOURCE - ${HAL_GENERIC_SOURCE} - ${HAL_ACPI_SOURCE} - ${HAL_APIC_SOURCE} generic/spinlock.c amd64/x86bios.c amd64/halinit.c - amd64/processor.c - ${CMAKE_CURRENT_BINARY_DIR}/hal.def) + amd64/processor.c) - # hal - add_library(hal SHARED ${HAL_SOURCE}) - add_pch(hal include/hal.h) - add_dependencies(hal psdk bugcodes asm) - - set_entrypoint(hal HalInitSystem) - set_subsystem(hal native) - set_image_base(hal 0x00010000) - add_importlibs(hal ntoskrnl) - target_link_libraries(hal libcntpr) - if(MSVC) - add_target_link_flags(hal "/ignore:4216") - endif() - - add_cd_file(TARGET hal DESTINATION reactos/system32 NO_CAB FOR all) + add_hal(hal SOURCES ${HAL_SOURCE} COMPONENTS generic acpi apic) endif() Added: trunk/reactos/hal/halx86/acpi.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/acpi.cmake?rev=…
============================================================================== --- trunk/reactos/hal/halx86/acpi.cmake (added) +++ trunk/reactos/hal/halx86/acpi.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,14 @@ + +list(APPEND HAL_ACPI_SOURCE + acpi/halacpi.c + acpi/halpnpdd.c + acpi/busemul.c + legacy/bus/pcibus.c) + +add_object_library(lib_hal_acpi ${HAL_ACPI_SOURCE}) + +#add_pch(lib_hal_acpi include/hal.h) + +if(MSVC OR (NOT CMAKE_VERSION VERSION_GREATER 2.8.7)) + target_link_libraries(lib_hal_acpi lib_hal_generic) +endif() Propchange: trunk/reactos/hal/halx86/acpi.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/apic.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/apic.cmake?rev=…
============================================================================== --- trunk/reactos/hal/halx86/apic.cmake (added) +++ trunk/reactos/hal/halx86/apic.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,14 @@ + +list(APPEND HAL_APIC_ASM_SOURCE + apic/apictrap.S + apic/tsccal.S) + +list(APPEND HAL_APIC_SOURCE + apic/apic.c + apic/apictimer.c + apic/halinit_apic.c + apic/rtctimer.c + apic/tsc.c) + +add_object_library(lib_hal_apic ${HAL_APIC_SOURCE} ${HAL_APIC_ASM_SOURCE}) +add_dependencies(lib_hal_apic asm) Propchange: trunk/reactos/hal/halx86/apic.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/generic.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/generic.cmake?r…
============================================================================== --- trunk/reactos/hal/halx86/generic.cmake (added) +++ trunk/reactos/hal/halx86/generic.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,27 @@ + +list(APPEND HAL_GENERIC_SOURCE + generic/beep.c + generic/cmos.c + generic/display.c + generic/dma.c + generic/drive.c + generic/halinit.c + generic/memory.c + generic/misc.c + generic/reboot.c + generic/sysinfo.c + generic/usage.c) + +if(ARCH STREQUAL "i386") + list(APPEND HAL_GENERIC_SOURCE + generic/bios.c + generic/portio.c) + + list(APPEND HAL_GENERIC_ASM_SOURCE + generic/v86.S) +endif() + +add_asm_files(halacpi_asm ${HAL_PIC_ASM_SOURCE} generic/v86.S) +add_object_library(lib_hal_generic ${HAL_GENERIC_SOURCE} ${HAL_GENERIC_ASM_SOURCE}) +add_dependencies(lib_hal_generic asm) +add_pch(lib_hal_generic include/hal.h) Propchange: trunk/reactos/hal/halx86/generic.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/legacy.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/legacy.cmake?re…
============================================================================== --- trunk/reactos/hal/halx86/legacy.cmake (added) +++ trunk/reactos/hal/halx86/legacy.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,20 @@ + +list(APPEND HAL_LEGACY_SOURCE + legacy/bus/bushndlr.c + legacy/bus/cmosbus.c + legacy/bus/isabus.c + legacy/bus/pcibus.c + ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.c + ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.c + legacy/bus/sysbus.c + legacy/bussupp.c + legacy/halpnpdd.c + legacy/halpcat.c) + +add_object_library(lib_hal_legacy ${HAL_LEGACY_SOURCE}) + +#add_pch(lib_hal_legacy include/hal.h) + +if(MSVC OR (NOT CMAKE_VERSION VERSION_GREATER 2.8.7)) + target_link_libraries(lib_hal_legacy lib_hal_generic) +endif() Propchange: trunk/reactos/hal/halx86/legacy.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/minihal.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/minihal.cmake?r…
============================================================================== --- trunk/reactos/hal/halx86/minihal.cmake (added) +++ trunk/reactos/hal/halx86/minihal.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,32 @@ + + +list(APPEND MINI_HAL_SOURCE + generic/portio.c + generic/systimer.S + legacy/bus/bushndlr.c + legacy/bus/cmosbus.c + legacy/bus/isabus.c + legacy/bus/pcibus.c + legacy/bus/sysbus.c + legacy/bussupp.c + generic/beep.c + generic/bios.c + generic/cmos.c + generic/dma.c + generic/display.c + generic/drive.c + generic/misc.c + generic/profil.c + generic/reboot.c + generic/spinlock.c + generic/sysinfo.c + generic/timer.c + generic/usage.c + up/halinit_mini.c + up/pic.c + up/processor.c) + +# mini_hal +add_library(mini_hal ${MINI_HAL_SOURCE}) +add_target_compile_definitions(mini_hal _BLDR_ _MINIHAL_) +add_dependencies(mini_hal psdk bugcodes asm) Propchange: trunk/reactos/hal/halx86/minihal.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/pcidata.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/pcidata.cmake?r…
============================================================================== --- trunk/reactos/hal/halx86/pcidata.cmake (added) +++ trunk/reactos/hal/halx86/pcidata.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,13 @@ +##################################### +# Generate the pcidata source files in the x86 build +# +add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.c ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.h + COMMAND native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_classes.ids ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.c ${CMAKE_CURRENT_BINARY_DIR}/pci_classes.h ClassTable INIT_FUNCTION ${CMAKE_CURRENT_SOURCE_DIR}/include/hal.h + DEPENDS native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_classes.ids) + +add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.c ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.h + COMMAND native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_vendors.ids ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.c ${CMAKE_CURRENT_BINARY_DIR}/pci_vendors.h VendorTable INIT_FUNCTION ${CMAKE_CURRENT_SOURCE_DIR}/include/hal.h + DEPENDS native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/legacy/bus/pci_vendors.ids) +##################################### Propchange: trunk/reactos/hal/halx86/pcidata.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/pic.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/pic.cmake?rev=5…
============================================================================== --- trunk/reactos/hal/halx86/pic.cmake (added) +++ trunk/reactos/hal/halx86/pic.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,13 @@ + +list(APPEND HAL_PIC_ASM_SOURCE + generic/systimer.S + generic/trap.S) + +list(APPEND HAL_PIC_SOURCE + generic/profil.c + generic/timer.c + up/halinit_up.c + up/pic.c) + +add_object_library(lib_hal_pic ${HAL_PIC_SOURCE} ${HAL_PIC_ASM_SOURCE}) +add_dependencies(lib_hal_pic asm) Propchange: trunk/reactos/hal/halx86/pic.cmake ------------------------------------------------------------------------------ svn:eol-style = native Added: trunk/reactos/hal/halx86/up.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/up.cmake?rev=58…
============================================================================== --- trunk/reactos/hal/halx86/up.cmake (added) +++ trunk/reactos/hal/halx86/up.cmake [iso-8859-1] Sat Mar 23 21:15:28 2013 @@ -1,0 +1,6 @@ + +list(APPEND HAL_UP_SOURCE + generic/spinlock.c + up/processor.c) + +add_object_library(lib_hal_up ${HAL_UP_SOURCE}) Propchange: trunk/reactos/hal/halx86/up.cmake ------------------------------------------------------------------------------ svn:eol-style = native
11 years, 9 months
1
0
0
0
[dgorbachev] 58593: [TRANSLATION] Update translations: - Turkish by Erdem Ersoy (CORE-7014); - Italian by Paolo Devoti (CORE-7024).
by dgorbachev@svn.reactos.org
Author: dgorbachev Date: Sat Mar 23 19:19:16 2013 New Revision: 58593 URL:
http://svn.reactos.org/svn/reactos?rev=58593&view=rev
Log: [TRANSLATION] Update translations: - Turkish by Erdem Ersoy (CORE-7014); - Italian by Paolo Devoti (CORE-7024). Modified: trunk/reactos/base/applications/games/solitaire/lang/tr-TR.rc trunk/reactos/base/applications/games/spider/lang/tr-TR.rc trunk/reactos/base/applications/games/winmine/lang/tr-TR.rc trunk/reactos/base/applications/magnify/lang/tr-TR.rc trunk/reactos/base/applications/mplay32/lang/tr-TR.rc trunk/reactos/base/applications/mspaint/lang/tr-TR.rc trunk/reactos/base/applications/notepad/lang/tr-TR.rc trunk/reactos/base/applications/regedit/lang/it-IT.rc trunk/reactos/base/applications/sndrec32/lang/en-US.rc trunk/reactos/base/applications/sndrec32/lang/tr-TR.rc trunk/reactos/base/applications/wordpad/En.rc trunk/reactos/base/applications/wordpad/Tr.rc trunk/reactos/dll/cpl/timedate/lang/it-IT.rc trunk/reactos/dll/cpl/timedate/rsrc.rc trunk/reactos/dll/win32/userenv/lang/it-IT.rc Modified: trunk/reactos/base/applications/games/solitaire/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/so…
============================================================================== --- trunk/reactos/base/applications/games/solitaire/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/games/solitaire/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -71,8 +71,8 @@ BEGIN MENUITEM "&DaÄıt\tF2", IDM_GAME_NEW MENUITEM SEPARATOR - MENUITEM "D&esteler", IDM_GAME_DECK - MENUITEM "&Ayarlar", IDM_GAME_OPTIONS + MENUITEM "D&esteler...", IDM_GAME_DECK + MENUITEM "&Ayarlar...", IDM_GAME_OPTIONS MENUITEM SEPARATOR MENUITEM "&ÃıkıÅ", IDM_GAME_EXIT END Modified: trunk/reactos/base/applications/games/spider/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/sp…
============================================================================== --- trunk/reactos/base/applications/games/spider/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/games/spider/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -64,7 +64,7 @@ BEGIN MENUITEM "&Yeni oyun\tF2", IDM_GAME_NEW MENUITEM SEPARATOR - MENUITEM "&Desteler", IDM_GAME_DECK + MENUITEM "&Desteler...", IDM_GAME_DECK MENUITEM SEPARATOR MENUITEM "&ÃıkıÅ", IDM_GAME_EXIT END Modified: trunk/reactos/base/applications/games/winmine/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/wi…
============================================================================== --- trunk/reactos/base/applications/games/winmine/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/games/winmine/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -31,20 +31,20 @@ MENU_WINEMINE MENU BEGIN POPUP "&Seçenekler" BEGIN - MENUITEM "&Yeni\tF2", IDM_NEW + MENUITEM "&Yeni\tF2", IDM_NEW MENUITEM SEPARATOR - MENUITEM "&Soru Ä°mi", IDM_MARKQ + MENUITEM "&Soru Ä°mi", IDM_MARKQ MENUITEM SEPARATOR - MENUITEM "&BaÅlangıç", IDM_BEGINNER - MENUITEM "&Orta", IDM_ADVANCED - MENUITEM "&Ä°leri", IDM_EXPERT - MENUITEM "&Ãzel", IDM_CUSTOM + MENUITEM "&BaÅlangıç", IDM_BEGINNER + MENUITEM "&Orta", IDM_ADVANCED + MENUITEM "&Ä°leri", IDM_EXPERT + MENUITEM "&Ãzel...", IDM_CUSTOM MENUITEM SEPARATOR - MENUITEM "&ÃıkıÅ\tAlt+X", IDM_EXIT + MENUITEM "&ÃıkıÅ\tAlt+X", IDM_EXIT END POPUP "&Bilgi" BEGIN - MENUITEM "&En Kısa Süreler", IDM_TIMES - MENUITEM "&Hakkında", IDM_ABOUT + MENUITEM "&En Kısa Süreler...", IDM_TIMES + MENUITEM "&Hakkında", IDM_ABOUT END END Modified: trunk/reactos/base/applications/magnify/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/magnify/…
============================================================================== --- trunk/reactos/base/applications/magnify/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/magnify/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -13,7 +13,7 @@ POPUP "&Seçke" BEGIN MENUITEM "&ÃıkıÅ", IDM_EXIT - MENUITEM "&Ayarlar", IDM_OPTIONS + MENUITEM "&Ayarlar...", IDM_OPTIONS MENUITEM SEPARATOR MENUITEM "&Hakkında", IDM_ABOUT END Modified: trunk/reactos/base/applications/mplay32/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mplay32/…
============================================================================== --- trunk/reactos/base/applications/mplay32/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/mplay32/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -4,14 +4,14 @@ BEGIN POPUP "&Kütük" BEGIN - MENUITEM "&Aç", IDM_OPEN_FILE - MENUITEM "&Kapat", IDM_CLOSE_FILE + MENUITEM "&Aç...", IDM_OPEN_FILE + MENUITEM "&Kapat", IDM_CLOSE_FILE MENUITEM SEPARATOR - MENUITEM "&ÃıkıÅ", IDM_EXIT + MENUITEM "&ÃıkıÅ", IDM_EXIT END POPUP "&Yardım" BEGIN - MENUITEM "&Hakkında", IDM_ABOUT + MENUITEM "&Hakkında", IDM_ABOUT END END Modified: trunk/reactos/base/applications/mspaint/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mspaint/…
============================================================================== --- trunk/reactos/base/applications/mspaint/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/mspaint/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -12,81 +12,81 @@ BEGIN POPUP "&Kütük" BEGIN - MENUITEM "&Yeni\tCtrl+N", IDM_FILENEW - MENUITEM "&Aç\tCtrl+O", IDM_FILEOPEN - MENUITEM "&Kaydet\tCtrl+S", IDM_FILESAVE - MENUITEM "Ay&rı Kaydet", IDM_FILESAVEAS - MENUITEM SEPARATOR - MENUITEM "DöÅeyerek Duvar KaÄıdı Yap", IDM_FILEASWALLPAPERPLANE + MENUITEM "&Yeni\tCtrl+N", IDM_FILENEW + MENUITEM "&Aç...\tCtrl+O", IDM_FILEOPEN + MENUITEM "&Kaydet\tCtrl+S", IDM_FILESAVE + MENUITEM "Ay&rı Kaydet...", IDM_FILESAVEAS + MENUITEM SEPARATOR + MENUITEM "DöÅeyerek Duvar KaÄıdı Yap", IDM_FILEASWALLPAPERPLANE MENUITEM "Ortalayarak Duvar KaÄıdı Yap", IDM_FILEASWALLPAPERCENTERED - MENUITEM "Uzatarak Duvar KaÄıdı Yap", IDM_FILEASWALLPAPERSTRETCHED - MENUITEM SEPARATOR - MENUITEM "&ÃıkıÅ\tAlt+F4", IDM_FILEEXIT + MENUITEM "Uzatarak Duvar KaÄıdı Yap", IDM_FILEASWALLPAPERSTRETCHED + MENUITEM SEPARATOR + MENUITEM "&ÃıkıÅ\tAlt+F4", IDM_FILEEXIT END POPUP "&Düzen" BEGIN - MENUITEM "Geri Al\tCtrl+Z", IDM_EDITUNDO - MENUITEM "Yinele\tCtrl+Y", IDM_EDITREDO - MENUITEM SEPARATOR - MENUITEM "Kes\tCtrl+X", IDM_EDITCUT - MENUITEM "ÃoÄalt\tCtrl+C", IDM_EDITCOPY - MENUITEM "YapıÅtır\tCtrl+V", IDM_EDITPASTE - MENUITEM "Seçimi Sil\tDel", IDM_EDITDELETESELECTION - MENUITEM "Seçimi Evir", IDM_EDITINVERTSELECTION - MENUITEM "Hepsini Seç\tCtrl+A", IDM_EDITSELECTALL - MENUITEM SEPARATOR - MENUITEM "Seçimi Åuraya Kopyala", IDM_EDITCOPYTO - MENUITEM "Åuradan YapıÅtır", IDM_EDITPASTEFROM + MENUITEM "Geri Al\tCtrl+Z", IDM_EDITUNDO + MENUITEM "Yinele\tCtrl+Y", IDM_EDITREDO + MENUITEM SEPARATOR + MENUITEM "Kes\tCtrl+X", IDM_EDITCUT + MENUITEM "ÃoÄalt\tCtrl+C", IDM_EDITCOPY + MENUITEM "YapıÅtır\tCtrl+V", IDM_EDITPASTE + MENUITEM "Seçimi Sil\tDel", IDM_EDITDELETESELECTION + MENUITEM "Seçimi Evir", IDM_EDITINVERTSELECTION + MENUITEM "Hepsini Seç\tCtrl+A", IDM_EDITSELECTALL + MENUITEM SEPARATOR + MENUITEM "Seçimi Åuraya Kopyala...", IDM_EDITCOPYTO + MENUITEM "Åuradan YapıÅtır...", IDM_EDITPASTEFROM END POPUP "&Görünüm" BEGIN - MENUITEM "Araç ÃubuÄu\tCtrl+T", IDM_VIEWTOOLBOX, CHECKED - MENUITEM "Renklik\tCtrl+L", IDM_VIEWCOLORPALETTE, CHECKED - MENUITEM "Durum ÃubuÄu", IDM_VIEWSTATUSBAR, CHECKED - MENUITEM "Metin ÃubuÄu", IDM_FORMATICONBAR, CHECKED, GRAYED + MENUITEM "Araç ÃubuÄu\tCtrl+T", IDM_VIEWTOOLBOX, CHECKED + MENUITEM "Renklik\tCtrl+L", IDM_VIEWCOLORPALETTE, CHECKED + MENUITEM "Durum ÃubuÄu", IDM_VIEWSTATUSBAR, CHECKED + MENUITEM "Metin ÃubuÄu", IDM_FORMATICONBAR, CHECKED, GRAYED MENUITEM SEPARATOR POPUP "Büyüt" BEGIN POPUP "Kullanıcı Tanımlı" BEGIN - MENUITEM "%12,5", IDM_VIEWZOOM125 - MENUITEM "%25", IDM_VIEWZOOM25 - MENUITEM "%50", IDM_VIEWZOOM50 - MENUITEM "%100", IDM_VIEWZOOM100 - MENUITEM "%200", IDM_VIEWZOOM200 - MENUITEM "%400", IDM_VIEWZOOM400 - MENUITEM "%800", IDM_VIEWZOOM800 + MENUITEM "%12,5", IDM_VIEWZOOM125 + MENUITEM "%25", IDM_VIEWZOOM25 + MENUITEM "%50", IDM_VIEWZOOM50 + MENUITEM "%100", IDM_VIEWZOOM100 + MENUITEM "%200", IDM_VIEWZOOM200 + MENUITEM "%400", IDM_VIEWZOOM400 + MENUITEM "%800", IDM_VIEWZOOM800 END MENUITEM SEPARATOR - MENUITEM "Kılavuzu Göster\tCtrl+G", IDM_VIEWSHOWGRID - MENUITEM "KüçüÄünü Göster", IDM_VIEWSHOWMINIATURE + MENUITEM "Kılavuzu Göster\tCtrl+G", IDM_VIEWSHOWGRID + MENUITEM "KüçüÄünü Göster", IDM_VIEWSHOWMINIATURE END - MENUITEM "Tam Ekran\tCtrl+F", IDM_VIEWFULLSCREEN + MENUITEM "Tam Ekran\tCtrl+F", IDM_VIEWFULLSCREEN END POPUP "G&örüntü" BEGIN - MENUITEM "Döndür ya da Ãevir\tCtrl+R", IDM_IMAGEROTATEMIRROR - MENUITEM "Boyutlandır\tCtrl+W", IDM_IMAGECHANGESIZE - MENUITEM "Kırp", IDM_IMAGECROP - MENUITEM "Renkleri Evir\tCtrl+I", IDM_IMAGEINVERTCOLORS - MENUITEM "Ãznitelikler\tCtrl+E", IDM_IMAGEATTRIBUTES - MENUITEM "Resmi Temizle\tCtrl+Shft+N", IDM_IMAGEDELETEIMAGE - MENUITEM "Donuk Ãiz", IDM_IMAGEDRAWOPAQUE + MENUITEM "Döndür ya da Ãevir...\tCtrl+R", IDM_IMAGEROTATEMIRROR + MENUITEM "Boyutlandır...\tCtrl+W", IDM_IMAGECHANGESIZE + MENUITEM "Kırp", IDM_IMAGECROP + MENUITEM "Renkleri Evir...\tCtrl+I", IDM_IMAGEINVERTCOLORS + MENUITEM "Ãznitelikler\tCtrl+E", IDM_IMAGEATTRIBUTES + MENUITEM "Resmi Temizle\tCtrl+Shft+N", IDM_IMAGEDELETEIMAGE + MENUITEM "Donuk Ãiz", IDM_IMAGEDRAWOPAQUE END POPUP "R&enkler" BEGIN - MENUITEM "RenkliÄi Düzenle", IDM_COLORSEDITPALETTE + MENUITEM "RenkliÄi Düzenle...", IDM_COLORSEDITPALETTE END POPUP "&Yardım" BEGIN - MENUITEM "Yardım Konuları", IDM_HELPHELPTOPICS - MENUITEM SEPARATOR - MENUITEM "Hakkında", IDM_HELPINFO + MENUITEM "Yardım Konuları", IDM_HELPHELPTOPICS + MENUITEM SEPARATOR + MENUITEM "Hakkında", IDM_HELPINFO END END Modified: trunk/reactos/base/applications/notepad/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/notepad/…
============================================================================== --- trunk/reactos/base/applications/notepad/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/notepad/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -44,13 +44,13 @@ POPUP "&Kütük" BEGIN MENUITEM "&Yeni\tCtrl+N", CMD_NEW - MENUITEM "&Aç\tCtrl+O", CMD_OPEN + MENUITEM "&Aç...\tCtrl+O", CMD_OPEN MENUITEM "&Kaydet\tCtrl+S", CMD_SAVE - MENUITEM "Ay&rı Kaydet", CMD_SAVE_AS + MENUITEM "Ay&rı Kaydet...", CMD_SAVE_AS MENUITEM SEPARATOR - MENUITEM "&Sayfa Yapısı", CMD_PAGE_SETUP - MENUITEM "Ya&zdır\tCtrl+P", CMD_PRINT - MENUITEM "Yaz&ıcı Ayarları", CMD_PRINTER_SETUP + MENUITEM "&Sayfa Yapısı...", CMD_PAGE_SETUP + MENUITEM "Ya&zdır...\tCtrl+P", CMD_PRINT + MENUITEM "Yaz&ıcı Ayarları...", CMD_PRINTER_SETUP MENUITEM SEPARATOR MENUITEM "&ÃıkıÅ", CMD_EXIT END @@ -63,10 +63,10 @@ MENUITEM "&YapıÅtır\tCtrl+V", CMD_PASTE MENUITEM "&Sil\tDel", CMD_DELETE MENUITEM SEPARATOR - MENUITEM "&Ara\tCtrl+F", CMD_SEARCH + MENUITEM "&Ara...\tCtrl+F", CMD_SEARCH MENUITEM "S&onrakini Ara\tF3", CMD_SEARCH_NEXT - MENUITEM "&DeÄiÅtir\tCtrl+H", CMD_REPLACE - MENUITEM "G&it\tCtrl+G", CMD_GOTO + MENUITEM "&DeÄiÅtir...\tCtrl+H",CMD_REPLACE + MENUITEM "G&it...\tCtrl+G", CMD_GOTO MENUITEM SEPARATOR MENUITEM "&Tümünü Seç\tCtrl+A", CMD_SELECT_ALL MENUITEM "&Zaman\tF5", CMD_TIME_DATE @@ -74,7 +74,7 @@ POPUP "&Biçim" BEGIN MENUITEM "&Satır Kaydır", CMD_WRAP - MENUITEM "&Yazı Türü", CMD_FONT + MENUITEM "&Yazı Türü...", CMD_FONT END POPUP "&Görünüm" BEGIN @@ -83,7 +83,7 @@ POPUP "&Yardım" BEGIN MENUITEM "&Yardım Konuları", CMD_HELP_CONTENTS - MENUITEM "Yardımda &Ara", CMD_HELP_SEARCH + MENUITEM "Yardımda &Ara...", CMD_HELP_SEARCH MENUITEM "Yardım &İçin Yardım", CMD_HELP_ON_HELP MENUITEM SEPARATOR MENUITEM "&Hakkında", CMD_ABOUT Modified: trunk/reactos/base/applications/regedit/lang/it-IT.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/…
============================================================================== --- trunk/reactos/base/applications/regedit/lang/it-IT.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/regedit/lang/it-IT.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -227,7 +227,7 @@ CAPTION "Modifica DWORD" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "&Name:",IDC_STATIC,6,6,134,8 + LTEXT "&Nome:",IDC_STATIC,6,6,134,8 EDITTEXT IDC_VALUE_NAME,6,17,240,12,ES_AUTOHSCROLL | ES_READONLY LTEXT "&Dati:",IDC_STATIC,6,35,161,8 EDITTEXT IDC_VALUE_DATA,6,46,116,12,ES_AUTOHSCROLL @@ -306,7 +306,7 @@ STRINGTABLE DISCARDABLE BEGIN ID_REGISTRY_MENU "Contiene i comandi per lavorare su tutto il Registro" - ID_EDIT_MENU "Contiene i comandi per editare valori o chiavi" + ID_EDIT_MENU "Contiene i comandi per modificare valori o chiavi" ID_VIEW_MENU "Contiene i comandi per personalizzare la finestra del Registro" ID_FAVOURITES_MENU "Contiene i comandi per accedere alle chiavi usate frequentemente" ID_HELP_MENU "Contiene i comandi per visualizzare la Guida e informazioni sull'editor del Registro" @@ -386,7 +386,7 @@ IDS_IMPORT_REG_FILE "Importa file di Registro" IDS_EXPORT_REG_FILE "Esporta file di Registro" IDS_LOAD_HIVE "Carica Hive" - IDS_UNLOAD_HIVE "Esplis Hive" + IDS_UNLOAD_HIVE "Scarica Hive" IDS_INVALID_DWORD "(valore DWORD non valido)" END @@ -467,8 +467,8 @@ BEGIN IDS_PORT_PORT_IO "Porta" IDS_PORT_MEMORY_IO "Memoria" - IDS_INTERRUPT_EDGE_SENSITIVE "Bordo Sensibile" - IDS_INTERRUPT_LEVEL_SENSITIVE "Livello Sensibile" + IDS_INTERRUPT_EDGE_SENSITIVE "Sensibile al fronte" + IDS_INTERRUPT_LEVEL_SENSITIVE "Sensibile al livello" IDS_MEMORY_READ_ONLY "Solo lettura" IDS_MEMORY_WRITE_ONLY "Solo scrittura" IDS_MEMORY_READ_WRITE "Leggi / Scrivi" @@ -524,7 +524,7 @@ LTEXT "&Chiave:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13 DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14 - PUSHBUTTON "Cancella", IDCANCEL, 89, 17, 50, 14 + PUSHBUTTON "Annulla", IDCANCEL, 89, 17, 50, 14 } IDD_ADDFAVORITES DIALOGEX DISCARDABLE 0, 0, 186, 46 Modified: trunk/reactos/base/applications/sndrec32/lang/en-US.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/sndrec32…
============================================================================== --- trunk/reactos/base/applications/sndrec32/lang/en-US.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/sndrec32/lang/en-US.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -36,13 +36,13 @@ END END -STRINGTABLE +STRINGTABLE BEGIN IDS_APP_TITLE "Sound recorder" IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" END -STRINGTABLE +STRINGTABLE BEGIN IDS_STRPOS "Position: %.2f s" IDS_STRDUR "Lenght: %.2f s" Modified: trunk/reactos/base/applications/sndrec32/lang/tr-TR.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/sndrec32…
============================================================================== --- trunk/reactos/base/applications/sndrec32/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/sndrec32/lang/tr-TR.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -22,9 +22,9 @@ POPUP "&Kütük" BEGIN MENUITEM "&Yeni", ID_NEW - MENUITEM "&Aç", ID_FILE_OPEN + MENUITEM "&Aç...", ID_FILE_OPEN MENUITEM "&Kaydet", ID_FILE_SAVE, GRAYED - MENUITEM "Ay&rı Kaydet", ID_FILE_SAVEAS, GRAYED + MENUITEM "Ay&rı Kaydet...", ID_FILE_SAVEAS, GRAYED MENUITEM SEPARATOR MENUITEM "&ÃıkıÅ", ID_EXIT END @@ -36,13 +36,13 @@ END END -STRINGTABLE +STRINGTABLE BEGIN IDS_APP_TITLE "Ses Kaydedicisi" IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" END -STRINGTABLE +STRINGTABLE BEGIN IDS_STRPOS "Konum: %.2f s" IDS_STRDUR "Uzunluk: %.2f s" Modified: trunk/reactos/base/applications/wordpad/En.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/…
============================================================================== --- trunk/reactos/base/applications/wordpad/En.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/wordpad/En.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -173,7 +173,7 @@ IDD_TABSTOPS DIALOG 30, 20, 200, 110 STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU CAPTION "Tabs" -FONT 8, "MS SHell DLg" +FONT 8, "MS Shell Dlg" BEGIN GROUPBOX "Tab stops", -1, 10, 10, 120, 90 COMBOBOX IDC_TABSTOPS, 20, 20, 100, 60, CBS_SIMPLE Modified: trunk/reactos/base/applications/wordpad/Tr.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/…
============================================================================== --- trunk/reactos/base/applications/wordpad/Tr.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/wordpad/Tr.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -27,14 +27,14 @@ BEGIN POPUP "&Kütük" BEGIN - MENUITEM "&Yeni\tCtrl+N", ID_FILE_NEW - MENUITEM "&Aç\tCtrl+O", ID_FILE_OPEN + MENUITEM "&Yeni...\tCtrl+N", ID_FILE_NEW + MENUITEM "&Aç...\tCtrl+O", ID_FILE_OPEN MENUITEM "&Kaydet\tCtrl+S", ID_FILE_SAVE - MENUITEM "Ay&rı Kaydet", ID_FILE_SAVEAS - MENUITEM SEPARATOR - MENUITEM "Ya&zdır\tCtrl+P", ID_PRINT - MENUITEM "&Baskı Ãnizleme", ID_PREVIEW - MENUITEM "&Sayfa Yapısı", ID_PRINTSETUP + MENUITEM "Ay&rı Kaydet...", ID_FILE_SAVEAS + MENUITEM SEPARATOR + MENUITEM "Ya&zdır...\tCtrl+P", ID_PRINT + MENUITEM "&Baskı Ãnizleme...", ID_PREVIEW + MENUITEM "&Sayfa Yapısı...", ID_PRINTSETUP MENUITEM SEPARATOR MENUITEM "&ÃıkıÅ", ID_FILE_EXIT END @@ -51,7 +51,7 @@ MENUITEM SEPARATOR MENUITEM "&Ara\tCtrl+F", ID_FIND MENUITEM "S&onrakini Ara\tF3", ID_FIND_NEXT - MENUITEM "&DeÄiÅtir\tCtrl+H", ID_REPLACE + MENUITEM "&DeÄiÅtir...\tCtrl+H", ID_REPLACE MENUITEM SEPARATOR MENUITEM "Sa< Okunur", ID_EDIT_READONLY MENUITEM "D&eÄiÅtirilmiÅ", ID_EDIT_MODIFIED @@ -72,18 +72,18 @@ MENUITEM "&Ãizgilik", ID_TOGGLE_RULER MENUITEM "&Durum ÃubuÄu", ID_TOGGLE_STATUSBAR MENUITEM SEPARATOR - MENUITEM "A&yarlar", ID_VIEWPROPERTIES + MENUITEM "A&yarlar...", ID_VIEWPROPERTIES END POPUP "&Ekle" BEGIN - MENUITEM "&Tarih veya Saat", ID_DATETIME + MENUITEM "&Tarih veya Saat...",ID_DATETIME END POPUP "&Biçim" BEGIN - MENUITEM "&Yazı türü", ID_FONTSETTINGS - MENUITEM "&Madde imi", ID_BULLET - MENUITEM "&Paragraf", ID_PARAFORMAT - MENUITEM "&Sekmeler", ID_TABSTOPS + MENUITEM "&Yazı Türü...", ID_FONTSETTINGS + MENUITEM "&Madde Ä°mi", ID_BULLET + MENUITEM "&Paragraf...", ID_PARAFORMAT + MENUITEM "&Sekmeler...", ID_TABSTOPS POPUP "&Arkaplan" BEGIN MENUITEM "&Dizge Rengi\tCtrl+1", ID_BACK_1 @@ -92,7 +92,7 @@ END POPUP "&Yardım" BEGIN - MENUITEM "&Hakkında", ID_ABOUT + MENUITEM "&Hakkında", ID_ABOUT END END @@ -104,8 +104,8 @@ MENUITEM "&ÃoÄalt", ID_EDIT_COPY MENUITEM "&YapıÅtır", ID_EDIT_PASTE MENUITEM SEPARATOR - MENUITEM "&Madde imi", ID_BULLET - MENUITEM "&Paragraf", ID_PARAFORMAT + MENUITEM "&Madde Ä°mi", ID_BULLET + MENUITEM "&Paragraf...", ID_PARAFORMAT END END Modified: trunk/reactos/dll/cpl/timedate/lang/it-IT.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/timedate/lang/it-I…
============================================================================== --- trunk/reactos/dll/cpl/timedate/lang/it-IT.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/timedate/lang/it-IT.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -15,7 +15,7 @@ CONTROL "", IDC_MONTHCALENDAR, "MonthCalWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP, 11, 37, 108, 80, WS_EX_CLIENTEDGE - GROUPBOX "&Time", -1, 132, 2, 113, 125 + GROUPBOX "&Ora", -1, 132, 2, 113, 125 CONTROL "", IDC_TIMEPICKER, "SysDateTimePick32", DTS_TIMEFORMAT | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 144, 105, 90, 12 @@ -50,7 +50,7 @@ PUSHBUTTON "Aggiorna ora", IDC_UPDATEBUTTON, 187, 22, 49, 14 LTEXT "", IDC_SUCSYNC, 12, 54, 214, 23 LTEXT "", IDC_NEXTSYNC, 12, 96, 137, 12 - LTEXT "La sincronizzazione può avvenire solo quando il computer è connesso a Internet.", -1, 12, 114, 225, 25 + LTEXT "La sincronizzazione può avvenire solo quando il computer è connesso a Internet.", -1, 12, 114, 225, 25 END @@ -61,7 +61,7 @@ IDS_TIMEZONETEXT "Fuso orario corrente: %s" IDS_TIMEZONEINVALID "Non valido" IDS_TIMEZONEUNKNOWN "Sconosciuto" - IDS_INETTIMESUCSYNC "L'ora è stata sincronizzata correttamente con %s %s alle %s" + IDS_INETTIMESUCSYNC "L'ora è stata sincronizzata correttamente con %s %s alle %s" IDS_INETTIMENEXTSYNC "Prossima sincronizzazione: %s alle %s" IDS_INETTIMESYNCING "Sincronizzazione ora con %s" IDS_INETTIMEERROR "E' stato rilevato un errore mentre ReactOS si stava sincronizzando con %s" Modified: trunk/reactos/dll/cpl/timedate/rsrc.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/timedate/rsrc.rc?r…
============================================================================== --- trunk/reactos/dll/cpl/timedate/rsrc.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/timedate/rsrc.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -31,9 +31,6 @@ #ifdef LANGUAGE_ID_ID #include "lang/id-ID.rc" #endif -#ifdef LANGUAGE_IT_IT - #include "lang/it-IT.rc" -#endif #ifdef LANGUAGE_JA_JP #include "lang/ja-JP.rc" #endif @@ -58,8 +55,12 @@ // UTF-8 #pragma code_page(65001) + #ifdef LANGUAGE_HE_IL #include "lang/he-IL.rc" +#endif +#ifdef LANGUAGE_IT_IT + #include "lang/it-IT.rc" #endif #ifdef LANGUAGE_PL_PL #include "lang/pl-PL.rc" Modified: trunk/reactos/dll/win32/userenv/lang/it-IT.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/userenv/lang/it-…
============================================================================== --- trunk/reactos/dll/win32/userenv/lang/it-IT.rc [iso-8859-1] (original) +++ trunk/reactos/dll/win32/userenv/lang/it-IT.rc [iso-8859-1] Sat Mar 23 19:19:16 2013 @@ -1,13 +1,13 @@ /* -* PROJECT: ReactOS userenv.dll -* LICENSE: GPL - See COPYING in the top level directory -* FILE: dll/win32/userenv/lang/it-IT.rc -* PURPOSE: Italian Translation of dll/win32/userenv/lang/en-US.rc -* TRANSLATOR: Copyright (C) 2007 Daniele Forsi (dforsi at
gmail.com
) Italian Translation -* -* UPDATE HISTORY: -* 11 Feb 2009: Gabriel Ilardi (gabrielilardi at hotmail.it) - compatibility fixes/update. -*/ + * PROJECT: ReactOS userenv.dll + * LICENSE: GPL - See COPYING in the top level directory + * FILE: dll/win32/userenv/lang/it-IT.rc + * PURPOSE: Italian Translation of dll/win32/userenv/lang/en-US.rc + * TRANSLATOR: Copyright (C) 2007 Daniele Forsi (dforsi at
gmail.com
) Italian Translation + * + * UPDATE HISTORY: + * 11 Feb 2009: Gabriel Ilardi (gabrielilardi at hotmail.it) - compatibility fixes/update. + */ LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL @@ -26,8 +26,8 @@ IDS_MYMUSIC "Documenti\\Musica" IDS_MYVIDEOS "Documenti\\Video" IDS_TEMPLATES "Modelli" - IDS_RECENT "Recent" - IDS_SENDTO "SendTo" + IDS_RECENT "Recenti" + IDS_SENDTO "Invia a" IDS_PRINTHOOD "Stampanti" IDS_NETHOOD "Risorse di rete" IDS_LOCALSETTINGS "Impostazioni locali"
11 years, 9 months
1
0
0
0
[tkreuzer] 58592: [CMAKE] Implement add_object_library function
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat Mar 23 18:43:27 2013 New Revision: 58592 URL:
http://svn.reactos.org/svn/reactos?rev=58592&view=rev
Log: [CMAKE] Implement add_object_library function Modified: trunk/reactos/cmake/CMakeMacros.cmake Modified: trunk/reactos/cmake/CMakeMacros.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/CMakeMacros.cmake?re…
============================================================================== --- trunk/reactos/cmake/CMakeMacros.cmake [iso-8859-1] (original) +++ trunk/reactos/cmake/CMakeMacros.cmake [iso-8859-1] Sat Mar 23 18:43:27 2013 @@ -422,3 +422,13 @@ endforeach() set(${OUTPUT_VAR} ${__tmp_var} PARENT_SCOPE) endfunction() + +if(NOT MSVC AND (CMAKE_VERSION VERSION_GREATER 2.8.7)) + function(add_object_library _target) + add_library(${_target} OBJECT ${ARGN}) + endfunction() +else() + function(add_object_library _target) + add_library(${_target} ${ARGN}) + endfunction() +endif()
11 years, 9 months
1
0
0
0
← Newer
1
2
3
4
5
6
7
...
25
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
Results per page:
10
25
50
100
200