Module: wine
Branch: master
Commit: a49891f1e2e9852a113fcb8cbd365f477b686f03
URL: http://source.winehq.org/git/wine.git/?a=commit;h=a49891f1e2e9852a113fcb8cb…
Author: Alexandre Julliard <julliard(a)winehq.org>
Date: Thu Jun 24 15:10:58 2010 +0200
ntdll: Add a WINEARCH environment variable that allows forcing a specific 32- or 64-bit architecture.
---
dlls/ntdll/server.c | 22 ++++++++++++++++++++++
loader/wine.man.in | 18 ++++++++++++++++--
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/server.c b/dlls/ntdll/server.c
index 08ee784..8564c0a 100644
--- a/dlls/ntdll/server.c
+++ b/dlls/ntdll/server.c
@@ -752,6 +752,18 @@ static void setup_config_dir(void)
mkdir( config_dir, 0777 );
if (chdir( config_dir ) == -1) fatal_perror( "chdir to %s\n", config_dir );
+
+ if ((p = getenv( "WINEARCH" )) && !strcmp( p, "win32" ))
+ {
+ /* force creation of a 32-bit prefix */
+ int fd = open( "system.reg", O_WRONLY | O_CREAT | O_EXCL, 0666 );
+ if (fd != -1)
+ {
+ static const char regfile[] = "WINE REGISTRY Version 2\n\n#arch=win32\n";
+ write( fd, regfile, sizeof(regfile) - 1 );
+ close( fd );
+ }
+ }
MESSAGE( "wine: created the configuration directory '%s'\n", config_dir );
}
@@ -1040,6 +1052,7 @@ NTSTATUS server_init_process_done(void)
size_t server_init_thread( void *entry_point )
{
static const int is_win64 = (sizeof(void *) > sizeof(int));
+ const char *arch = getenv( "WINEARCH" );
int ret;
int reply_pipe[2];
struct sigaction sig_act;
@@ -1090,6 +1103,15 @@ size_t server_init_thread( void *entry_point )
switch (ret)
{
case STATUS_SUCCESS:
+ if (arch)
+ {
+ if (!strcmp( arch, "win32" ) && (is_win64 || is_wow64))
+ fatal_error( "WINEARCH set to win32 but '%s' is a 64-bit installation.\n",
+ wine_get_config_dir() );
+ if (!strcmp( arch, "win64" ) && !is_wow64)
+ fatal_error( "WINEARCH set to win64 but '%s' is a 32-bit installation.\n",
+ wine_get_config_dir() );
+ }
return info_size;
case STATUS_NOT_REGISTRY_FILE:
fatal_error( "'%s' is a 32-bit installation, it cannot support 64-bit applications.\n",
diff --git a/loader/wine.man.in b/loader/wine.man.in
index 7d6953c..6779b44 100644
--- a/loader/wine.man.in
+++ b/loader/wine.man.in
@@ -142,8 +142,9 @@ on all relay messages (API calls).
.TP
WINEDEBUG=relay
will turn on all relay messages. For more control on including or excluding
-functions and dlls from the relay trace look into the [Debug] section
-of the wine configuration file.
+functions and dlls from the relay trace, look into the
+.B HKEY_CURRENT_USER\\\\Software\\\\Wine\\\\Debug
+registry key.
.PP
For more information on debugging messages, see the
.I Running Wine
@@ -204,6 +205,19 @@ the builtin load fails; load shell32 always as builtin and comctl32
always as native. Oleaut32 will be disabled.
.RE
.TP
+.I WINEARCH
+Specifies the Windows architecture to support. It can be set either to
+.B win32
+(support only 32-bit applications), or to
+.B win64
+(support both 64-bit applications and 32-bit ones in WoW64 mode).
+.br
+The architecture supported by a given Wine prefix is set at prefix
+creation time and cannot be changed afterwards. When running with an
+existing prefix, Wine will refuse to start if
+.I WINEARCH
+doesn't match the prefix architecture.
+.TP
.I DISPLAY
Specifies the X11 display to use.
.TP
Module: wine
Branch: master
Commit: 9f7bc109d20a07367875fcd6044dbaad41d9eb7e
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9f7bc109d20a07367875fcd60…
Author: Alexandre Julliard <julliard(a)winehq.org>
Date: Thu Jun 24 11:01:56 2010 +0200
kernel32: Avoid returning the same name when GetTempFileName is called twice in a short interval.
---
dlls/kernel32/path.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/dlls/kernel32/path.c b/dlls/kernel32/path.c
index f0da96c..0e69f91 100644
--- a/dlls/kernel32/path.c
+++ b/dlls/kernel32/path.c
@@ -684,7 +684,10 @@ UINT WINAPI GetTempFileNameW( LPCWSTR path, LPCWSTR prefix, UINT unique, LPWSTR
/* get a "random" unique number and try to create the file */
HANDLE handle;
UINT num = GetTickCount() & 0xffff;
+ static UINT last;
+ /* avoid using the same name twice in a short interval */
+ if (last - num < 10) num = last + 1;
if (!num) num = 1;
unique = num;
do
@@ -696,6 +699,7 @@ UINT WINAPI GetTempFileNameW( LPCWSTR path, LPCWSTR prefix, UINT unique, LPWSTR
{ /* We created it */
TRACE("created %s\n", debugstr_w(buffer) );
CloseHandle( handle );
+ last = unique;
break;
}
if (GetLastError() != ERROR_FILE_EXISTS &&
Module: wine
Branch: master
Commit: 7649c75b40506221179296388c5d38891cda03e0
URL: http://source.winehq.org/git/wine.git/?a=commit;h=7649c75b40506221179296388…
Author: Francois Gouget <fgouget(a)free.fr>
Date: Thu Jun 24 10:18:34 2010 +0200
Assorted typo and spelling fixes.
---
dlls/d3dx9_36/tests/asm.c | 6 +++---
dlls/dbghelp/cpu_x86_64.c | 2 +-
dlls/ddraw/ddraw.c | 2 +-
dlls/mmdevapi/audio.c | 2 +-
dlls/mmdevapi/audiovolume.c | 2 +-
dlls/mmdevapi/tests/capture.c | 4 ++--
dlls/msvcrt/tests/misc.c | 2 +-
dlls/oleaut32/tests/olepicture.c | 4 ++--
dlls/setupx.dll16/setupx_main.c | 2 +-
dlls/shell32/tests/shellpath.c | 2 +-
dlls/urlmon/tests/uri.c | 2 +-
dlls/usp10/bidi.c | 2 +-
dlls/wined3d/surface.c | 2 +-
dlls/winejoystick.drv/joystick.c | 4 ++--
dlls/winex11.drv/xim.c | 2 +-
15 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/dlls/d3dx9_36/tests/asm.c b/dlls/d3dx9_36/tests/asm.c
index 276a6e2..23ec484 100644
--- a/dlls/d3dx9_36/tests/asm.c
+++ b/dlls/d3dx9_36/tests/asm.c
@@ -1362,13 +1362,13 @@ static void failure_test(void) {
/* shader 42: no modifiers with vs dcl sampler instruction */
"vs_3_0\n"
"dcl_2d_pp s0\n",
- /* shader 43: can't explicitely declare input registers in ps_2_0 */
+ /* shader 43: can't explicitly declare input registers in ps_2_0 */
"ps_2_0\n"
"dcl_texcoord0 t0\n",
- /* shader 44: can't implicitely declare registers in vs */
+ /* shader 44: can't implicitly declare registers in vs */
"vs_2_0\n"
"dcl o0\n",
- /* shader 45: can't implicitely declare samplers in vs */
+ /* shader 45: can't implicitly declare samplers in vs */
"vs_3_0\n"
"dcl s2\n",
/* shader 46: no tx registers in ps_3_0 */
diff --git a/dlls/dbghelp/cpu_x86_64.c b/dlls/dbghelp/cpu_x86_64.c
index f07d8e4..7b719ce 100644
--- a/dlls/dbghelp/cpu_x86_64.c
+++ b/dlls/dbghelp/cpu_x86_64.c
@@ -238,7 +238,7 @@ static void dump_unwind_info(HANDLE hProcess, ULONG64 base, RUNTIME_FUNCTION *fu
}
}
-/* highly derivated from dlls/ntdlls/signal_x86_64.c */
+/* highly derived from dlls/ntdll/signal_x86_64.c */
static ULONG64 get_int_reg(CONTEXT *context, int reg)
{
return *(&context->Rax + reg);
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
index 7d6558d..d5511ad 100644
--- a/dlls/ddraw/ddraw.c
+++ b/dlls/ddraw/ddraw.c
@@ -345,7 +345,7 @@ IDirectDrawImpl_Release(IDirectDraw7 *iface)
* DDSCL_SETDEVICEWINDOW: Sets a window specially used for rendering (I don't
* expect any difference to a normal window for wine)
* DDSCL_CREATEDEVICEWINDOW: Tells ddraw to create its own window for
- * rendering (Possible test case: Half-life)
+ * rendering (Possible test case: Half-Life)
*
* Unsure about these: DDSCL_FPUSETUP DDSCL_FPURESERVE
*
diff --git a/dlls/mmdevapi/audio.c b/dlls/mmdevapi/audio.c
index e0a7ac5..ddd97e8 100644
--- a/dlls/mmdevapi/audio.c
+++ b/dlls/mmdevapi/audio.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2010 Maarten Lankhorst for Codeweavers
+ * Copyright 2010 Maarten Lankhorst for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
diff --git a/dlls/mmdevapi/audiovolume.c b/dlls/mmdevapi/audiovolume.c
index 61cbed4..5e8994a 100644
--- a/dlls/mmdevapi/audiovolume.c
+++ b/dlls/mmdevapi/audiovolume.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2010 Maarten Lankhorst for Codeweavers
+ * Copyright 2010 Maarten Lankhorst for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
diff --git a/dlls/mmdevapi/tests/capture.c b/dlls/mmdevapi/tests/capture.c
index b5c4883..1bedfc6 100644
--- a/dlls/mmdevapi/tests/capture.c
+++ b/dlls/mmdevapi/tests/capture.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2010 Maarten Lankhorst for Codeweavers
+ * Copyright 2010 Maarten Lankhorst for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -244,7 +244,7 @@ static void test_audioclient(IAudioClient *ac)
ok(hr == E_INVALIDARG, "Initialize with invalid flags returns %08x\n", hr);
/* It seems that if length > 2s or periodicity != 0 the length is ignored and call succeeds
- * Since we can only initialize succesfully once skip those tests
+ * Since we can only initialize successfully once skip those tests
*/
hr = IAudioClient_Initialize(ac, AUDCLNT_SHAREMODE_SHARED, 0, 5000000, 0, NULL, NULL);
ok(hr == E_POINTER, "Initialize with null format returns %08x\n", hr);
diff --git a/dlls/msvcrt/tests/misc.c b/dlls/msvcrt/tests/misc.c
index 82dda5d..0e45eba 100644
--- a/dlls/msvcrt/tests/misc.c
+++ b/dlls/msvcrt/tests/misc.c
@@ -96,7 +96,7 @@ static void test_memcpy_s(void)
ret = pmemcpy_s(data, 10, data, 10);
ok(ret == 0, "ret = %x\n", ret);
ok(errno == 0xdeadbeef, "errno = %x\n", errno);
- ok(!memcmp(dest, data, 5), "data was destroyed during overwritting\n");
+ ok(!memcmp(dest, data, 5), "data was destroyed during overwriting\n");
errno = 0xdeadbeef;
dest[0] = 'x';
diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c
index 3208368..ab4fb48 100644
--- a/dlls/oleaut32/tests/olepicture.c
+++ b/dlls/oleaut32/tests/olepicture.c
@@ -829,7 +829,7 @@ static void test_OleLoadPicturePath(void)
DeleteFileA(temp_file);
- /* Try with a non-existent file. */
+ /* Try with a nonexistent file. */
hres = OleLoadPicturePath(temp_fileW + 8, NULL, 0, 0, &IID_IPicture, (void **)&pic);
ok(hres == INET_E_RESOURCE_NOT_FOUND || /* XP+ */
hres == E_UNEXPECTED || /* NT4/Win95 */
@@ -865,7 +865,7 @@ static void test_OleLoadPicturePath(void)
DeleteFileA(temp_file);
- /* Try with a non-existent file. */
+ /* Try with a nonexistent file. */
hres = OleLoadPicturePath(temp_fileW, NULL, 0, 0, &IID_IPicture, (void **)&pic);
ok(hres == INET_E_RESOURCE_NOT_FOUND || /* XP+ */
hres == E_UNEXPECTED || /* NT4/Win95 */
diff --git a/dlls/setupx.dll16/setupx_main.c b/dlls/setupx.dll16/setupx_main.c
index 3c37e1e..adc5900 100644
--- a/dlls/setupx.dll16/setupx_main.c
+++ b/dlls/setupx.dll16/setupx_main.c
@@ -29,7 +29,7 @@
* Stuff tested with:
* - rs405deu.exe (German Acroread 4.05 setup)
* - ie5setup.exe
- * - Netmeeting
+ * - NetMeeting
*
* FIXME:
* - string handling is... weird ;) (buflen etc.)
diff --git a/dlls/shell32/tests/shellpath.c b/dlls/shell32/tests/shellpath.c
index 33e0789..b874b5a 100644
--- a/dlls/shell32/tests/shellpath.c
+++ b/dlls/shell32/tests/shellpath.c
@@ -727,7 +727,7 @@ static void doChild(const char *arg)
trace("CSIDL_FAVORITES was changed to %s\n", path);
ret = CreateDirectoryA(path, NULL);
- ok(!ret, "expected failure with with ERROR_ALREADY_EXISTS\n");
+ ok(!ret, "expected failure with ERROR_ALREADY_EXISTS\n");
if (!ret)
ok(GetLastError() == ERROR_ALREADY_EXISTS,
"got %d, expected ERROR_ALREADY_EXISTS\n", GetLastError());
diff --git a/dlls/urlmon/tests/uri.c b/dlls/urlmon/tests/uri.c
index 6a3f306..31f22a5 100644
--- a/dlls/urlmon/tests/uri.c
+++ b/dlls/urlmon/tests/uri.c
@@ -1254,7 +1254,7 @@ static void test_IUri_GetPropertyLength(void) {
expectedLen = lstrlen(prop.value);
- /* This won't be neccessary once GetPropertyLength is implemented. */
+ /* This won't be necessary once GetPropertyLength is implemented. */
receivedLen = -1;
hr = IUri_GetPropertyLength(uri, j, &receivedLen, 0);
diff --git a/dlls/usp10/bidi.c b/dlls/usp10/bidi.c
index 8af28e7..0538fa5 100644
--- a/dlls/usp10/bidi.c
+++ b/dlls/usp10/bidi.c
@@ -851,7 +851,7 @@ int BIDI_ReorderV2lLevel(int level, int *pIndexs, const BYTE* plevel, int cch, B
return ich;
}
-/* Applies the reorder in reverse. Taking an already reordered string and returing the original */
+/* Applies the reorder in reverse. Taking an already reordered string and returning the original */
int BIDI_ReorderL2vLevel(int level, int *pIndexs, const BYTE* plevel, int cch, BOOL fReverse)
{
int ich = 0;
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 08835a8..e21086f 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3276,7 +3276,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
&& dst_surface == dstSwapchain->front_buffer
&& src_surface == dstSwapchain->back_buffers[0])
{
- /* Half-life does a Blt from the back buffer to the front buffer,
+ /* Half-Life does a Blt from the back buffer to the front buffer,
* Full surface size, no flags... Use present instead
*
* This path will only be entered for d3d7 and ddraw apps, because d3d8/9 offer no way to blit TO the front buffer
diff --git a/dlls/winejoystick.drv/joystick.c b/dlls/winejoystick.drv/joystick.c
index 9a6902e..95d9c32 100644
--- a/dlls/winejoystick.drv/joystick.c
+++ b/dlls/winejoystick.drv/joystick.c
@@ -230,10 +230,10 @@ static const WCHAR ini[] = {'W','i','n','e',' ','J','o','y','s','t','i','c','k',
lpCaps->wZmin = 0;
lpCaps->wZmax = (nrOfAxes >= 3) ? 0xFFFF : 0;
#ifdef BODGE_THE_HAT
- /* HalfLife won't allow you to map an axis event to things like
+ /* Half-Life won't allow you to map an axis event to things like
"next weapon" and "use". Linux reports the hat on my stick as
axis U and V. So, IFF BODGE_THE_HAT is defined, lie through our
- teeth and say we have 32 buttons, and we will map the axises to
+ teeth and say we have 32 buttons, and we will map the axes to
the high buttons. Really, perhaps this should be a registry entry,
or even a parameter to the Linux joystick driver (which would completely
remove the need for this.)
diff --git a/dlls/winex11.drv/xim.c b/dlls/winex11.drv/xim.c
index 6daa075..791139e 100644
--- a/dlls/winex11.drv/xim.c
+++ b/dlls/winex11.drv/xim.c
@@ -51,7 +51,7 @@ static DWORD dwCompStringSize = 0;
#define STYLE_ROOT (XIMPreeditNothing | XIMStatusNothing)
/* this uses all the callbacks to utilize full IME support */
#define STYLE_CALLBACK (XIMPreeditCallbacks | XIMStatusNothing)
-/* inorder to enable deadkey support */
+/* in order to enable deadkey support */
#define STYLE_NONE (XIMPreeditNothing | XIMStatusNothing)
static XIMStyle ximStyle = 0;
Module: wine
Branch: master
Commit: c59b791b855e3632eec7056073dec7cc0b7a8ed6
URL: http://source.winehq.org/git/wine.git/?a=commit;h=c59b791b855e3632eec705607…
Author: Francois Gouget <fgouget(a)codeweavers.com>
Date: Thu Jun 24 10:22:43 2010 +0200
programs: Remove spaces before '\n's in the resources.
---
programs/notepad/Si.rc | 2 +-
programs/taskmgr/Si.rc | 4 ++--
programs/xcopy/Ro.rc | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/programs/notepad/Si.rc b/programs/notepad/Si.rc
index 531e9fa..1947286 100644
--- a/programs/notepad/Si.rc
+++ b/programs/notepad/Si.rc
@@ -133,7 +133,7 @@ STRING_UNICODE_BE, "Unicode (UTF-16 big-endian)"
STRING_LOSS_OF_UNICODE_CHARACTERS, "%s\n\
Ta datoteka vsebuje Unicode znake, ki bodo izgubljeni,\n\
-če datoteko shranite v %s kodiranju. \n\
+če datoteko shranite v %s kodiranju.\n\
Da bi te znake obdržali, kliknite Prekliči in izberite\n\
eno izmed Unicode možnosti v seznamu kodiranj.\n\
Nadaljujem?"
diff --git a/programs/taskmgr/Si.rc b/programs/taskmgr/Si.rc
index 858e9d2..496c94a 100644
--- a/programs/taskmgr/Si.rc
+++ b/programs/taskmgr/Si.rc
@@ -547,9 +547,9 @@ BEGIN
nezaželjene posledice, vključno z nesabilnostjo sistema. Ali ste\n\
prepričani, da želite spremeniti prioriteto?"
IDS_PRIORITY_UNABLE2CHANGE "Ne morem spremeniti prioritete"
- IDS_TERMINATE_MESSAGE "OPOZORILO: Prekinjanje procesa lahko povzroči nezaželjene \n\
+ IDS_TERMINATE_MESSAGE "OPOZORILO: Prekinjanje procesa lahko povzroči nezaželjene\n\
posledice, vključno z izgubo podatkov in nestabilnostjo sistema.\n\
- Pred prekinitvijo proces ne bo imel možnosti shraniti svojega \n\
+ Pred prekinitvijo proces ne bo imel možnosti shraniti svojega\n\
stanja ali podatkov. Ali ste prepričani, da želite\n\
prekiniti proces?"
IDS_TERMINATE_UNABLE2TERMINATE "Ne morem prekiniti procesa"
diff --git a/programs/xcopy/Ro.rc b/programs/xcopy/Ro.rc
index 3e8a655..bf4f5eb 100644
--- a/programs/xcopy/Ro.rc
+++ b/programs/xcopy/Ro.rc
@@ -64,7 +64,7 @@ XCOPY sursă [destinație] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\
[/T] Creează o structură de directoare goale, dar nu copiază fișiere\n\
[/Y] Nu solicita confirmarea la suprascrierea fișierelor\n\
[/-Y] Solicită confirmarea la suprascrierea fișierelor\n\
-[/P] Solicită confirmarea înainte de copierea fiecărui fișier sursă \n\
+[/P] Solicită confirmarea înainte de copierea fiecărui fișier sursă\n\
[/N] Copiază utilizând prescurtări de nume\n\
[/U] Copiază numai fișierele care există deja în destinație\n\
[/R] Suprascrie orice fișiere cu protecție la modificări\n\