This is release 0.9.43 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Direct3D support on top of WGL instead of GLX for better portability.
- Many DirectSound fixes.
- Still more gdiplus functions.
- Many crypt32 improvements.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.43.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.43.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.42:
Alexandre Julliard (29):
wined3d: Fix compiler warning.
libwine: Fix lookup of 16-bit dll placeholders. Remove some old compatibility code.
ntdll: Fix a compiler warning.
ntdll: Convert the XML parser to Unicode to support UCS-16 manifests.
ntdll: Fixed the null bytes check in RtlIsTextUnicode.
ntdll: Use the exact size of the manifest file.
ntdll: Allow optional elements in the comClass element.
ntdll: Avoid activation context leak for dlls with no imports.
Avoid non-portable Unix mode bits macros.
make_makefiles: Add check for incorrect module name.
ntdll: Load dll from the directory containing the manifest for local assemblies.
user32: Erase parent window when child is hidden. From a patch by Clinton Stimpson.
advapi32/tests: Don't test the contents of an uninitialized buffer.
configure: Add -m32 flag for C++ compiler too.
ntdll: Relax the activation context size check.
user32: Store all builtin winprocs at the start of the array.
make_makefiles: Added support for updating include/Makefile.in.
gdiplus: Fixed GdiplusStartupOutput definition.
user32: Fixed the return value of DispatchMessageA/W.
user32: Get rid of winproc.h and move definitions in user_private.h.
d3d9: Comment out some failing fog tests.
msvcrt: Use the correct size_t type.
user32: Factor out the various SendMessage functions into a common routine.
user32: Factor out the calling of a window's winproc into a separate function.
user32: Added support for the magic WM_CHAR A->W conversions in Send/Post/DispatchMessage.
user32/tests: Added test cases for WM_CHAR conversions.
user32: Support for the magic WM_CHAR W->A conversion in Get/PeekMessage.
user32: WM_IME_CHAR should result in posted, not sent, WM_CHAR messages.
server: Fixed handling of a relative start time for a timer.
Andrew Talbot (8):
oleaut32: Constify some variables.
oleaut32: Constify some variables.
oleaut32: Constify some variables.
oleaut32: Constify some variables.
oleaut32: Constify some variables.
oledlg: Constify some variables.
qcap: Constify some variables.
quartz: Constify some variables.
Aric Stewart (1):
imm32: Additional constants needed for the IME implementation.
Chris Robinson (11):
winex11: Check for WGL drawing caps.
winex11: Report accumulation buffer bits for pixel formats.
winex11: Don't use ConvertAttribWGLtoGLX for wglCreatePbufferARB.
wgl: WGL_COLOR_BITS_ARB does include alpha.
winex11: Properly handle WGL_PBUFFER_LOST_ARB.
winex11: Be consistent with GLX_SLOW_CONFIG meaning GENERIC_ACCELERATION.
wined3d: Properly setup DevModeW before using it.
wined3d: Initialize major and minor when filling GL caps.
wined3d: Use the macro when querying the current display settings.
wined3d: Use a safer, more compliant method to parse extension strings.
winex11: Don't add spaces to the beginning of the wglExtensions list.
Clinton Stimpson (1):
user32: Also test parent messages when hiding child window.
Damjan Jovanovic (1):
msvcrt: mbsnbicmp should be case insensitive.
Detlef Riekenberg (6):
winspool: Add a TRACE when wine_dlopen for SONAME_LIBCUPS failed.
user32: Add a stub for GetAppCompatFlags2.
comdlg32: Return defaults for hDevMode and hDevNames.
comdlg32/tests: Add simple tests for PrintDlgA.
comdlg32/tests: More tests for the member lStructSize.
winspool/tests: Add tests for EnumPrinterDrivers.
Dmitry Timoshkov (11):
kernel32: Add more tests for time zone info.
kernel32: Fix TIME_CompTimeZoneID return type.
ntdll: Add some traces to make debugging time zone related problems easier.
ntdll: Simplify TIME_GetBias.
kernel32: Skip remainder of the time zone test if SystemTimeToTzSpecificLocalTime not present.
mshtml: Constify some data.
winecfg: Fix some compatibility problems.
gdi32: Make GetFontData traces more readable.
gdi32: Also print a readable table name in the failure notice.
include: winres.h no longer exists in PSDK, fix winresrc.h includes.
user32: CBN_SELCHANGE notification should be sent before an edit update.
Erik Inge Bolsø (1):
dinput: Fix joystick axis remapping.
Evan Stade (101):
gdiplus: Draw custom dashes.
gdiplus/tests: More GdipSetPenDashArray tests.
gdiplus: Check custom dash array for bad properties.
gdiplus: Fixed a typo.
oleaut32: Recognize EMF header when loading picture.
gdiplus: Partial implementation of GdipCreateMetafileFromWMF.
gdiplus: Added GdipGetImageBounds stub.
gdiplus: Added ImageAttributes stubs.
gdiplus: Added GdipDrawImagePointsRect stub.
gdiplus: Implemented GdipGetImageType.
gdiplus: Added a minimal implementation of GdipCreateImageAttributes.
gdiplus: Implemented GdipGetImageBounds for metafiles.
gdiplus: Partial implementation of GdipDrawImagePointsRect.
gdi32: Improve ExtCreatePen parameter checking.
gdi32: Added more tests for ExtCreatePen on PS_USERSTLYE.
gdi32: Handle PS_USERSTYLE in ExtCreatePen.
gdiplus: Implemented GdipDisposeImageAttributes.
gdiplus: Implemented GdipDisposeImage.
gdiplus: Added more stubs to gdiplus.spec.
gdiplus: Changed GdipGetImageType.
gdiplus: Fix memory leak in GdipCreateMetafileFromWMF.
gdiplus: Change include list on 3 tests.
gdiplus: Added GdipGetMetafileHeaderFromMetafile stub.
gdiplus: Added GdipFindFirstImageItem stub.
gdiplus: Added GdipGetMatrixElements.
gdiplus: Added GdipSetMatrixElements.
gdiplus: Added GdipCreateMatrix3.
gdiplus: Implemented GdipLoadImageFromStreamICM.
gdiplus: Added GdipCreateBitmapFromScan0.
gdiplus: Added GdipGetPropertyItemSize stub.
gdiplus: Added partial implementation of GdipSaveImageToStream.
gdiplus: Added GdipCreateBitmapFromStreamICM.
gdiplus: Added GdipRemovePropertyItem stub.
gdiplus: Added GdipBitmapGetPixel stub.
gdiplus: Added GdipSetImageAttributesColorKeys stub.
gdiplus: Track width and height of GpBitmaps.
gdiplus: Extend GdipDrawImagePointsRect.
oleaut32: Slight correction to EMF rendering.
gdiplus: Don't suggest image size when converting WMF to EMF.
gdiplus: Added GdipIsOutlineVisiblePathPointI stub.
gdiplus: Added GdipClonePath.
gdiplus: Added GdipFillPolygon.
gdiplus: Added GdipSetPenWidth.
gdiplus: Added GdipDrawLine.
gdiplus: Added solid-color path gradient brush implementation.
gdiplus: Added GdipSetPathGradientCenterColor.
gdiplus: Added GdipSetPathGradientWrapMode.
gdi32: Don't print fixme more than once.
gdiplus: Added GdipGetPathGradientPointCount.
gdiplus: Added GdipCreatePathGradient.
gdiplus: Added GdipS/GetPathGradientSurroundColorsWithCount stubs.
gdiplus: Added GdipSetPathGradientSigmaBlend stub.
gdiplus: Added GdipS/GetPathGradientGammaCorrection.
gdiplus: Updated GpBrush functions.
gdiplus: Added GdipG/SetPathGradientCenterPoint.
gdiplus: Added GdipG/SetPathGradientFocusScales.
gdiplus: Use custom cap base inset differently.
gdiplus: Removed old fixmes.
gdiplus: Alphabetized header.
oleaut32: Allow PNG_COLOR_TYPE_RGB_ALPHA.
gdiplus: Allow non-default GdiplusStartupInput.
gdiplus: Added GdipCreateBitmapFromStream.
gdiplus: Added GdipImageGetFrameDimensionsList stub.
gdiplus: Added GdipGetImagePixelFormat.
gdiplus: Added GdipImageSelectActiveFrame stub.
gdiplus: Added GdipBitmapLockBits.
gdiplus: Added GdipCreateStreamOnFile.
gdiplus: Added GdipCreateBitmapFromFile.
gdiplus: Return width and height of metafiles.
gdiplus: Added GdipDrawImageI.
gdiplus: Don't prematurely release stream.
gdiplus: GdipLoadImageFromStream makes initializations.
gdiplus: Make GdipGetMetafileHeaderFromMetafile return Ok.
gdiplus: Added GdipCreateLineBrush.
gdiplus: Added GdipSetLineWrapMode.
gdiplus: Added GdipSetLineSigmaBlend stub.
gdiplus: Added GdipGetLineGammaCorrection/GdipSetLineGammaCorrection.
gdiplus: Fixed bug drawing custom caps.
gdiplus: Added GdipSetImageAttributesColorMatrix stub.
gdiplus: Added GdipSetCustomLineCapStrokeCaps stub.
gdiplus: Updated brush cloner/deleter.
gdiplus: Added GdipCreateLineBrushFromRectI.
gdiplus: Added GdipFillRectangleI.
gdiplus: Updated GdipDrawRectangleI.
gdiplus: Added GdipCreatePath2.
gdiplus: Added GdipGetPenDashOffset/GdipSetPenDashOffset.
gdiplus: Added GdipFillRectangle.
gdiplus: Added GdipSetImagePalette stub.
gdiplus/tests: Added GdipCreateBitmapFromScan0 test.
gdiplus: Fixed conformance of GdipCreateBitmapFromScan0.
gdiplus: Added GdipCreateBitmapFromGraphics stub.
oleaut32: Handle transparency data when loading PNG images.
gdiplus: Added GdipGetImageGraphicsContext.
gdiplus: Replace GetDC(0) with CreateCompatibleDC(0).
gdiplus: Added GdipDrawImageRectRect.
gdiplus: Added GdipCreateTextureIA.
gdiplus: Updated GdipCloneBrush, GdipDeleteBrush.
gdiplus: Added GdipSetTextureTransform stub.
gdiplus: Better error checking in GdipBitmapLockBits.
gdiplus: Added GdipTranslateWorldTransform.
gdiplus: Added GdipConvertToEmfPlus stub.
Francois Gouget (79):
dxdiagn: Fix compilation on systems that don't support nameless unions.
comctl32: According to the PSDK, DrawShadowText() takes a non-const RECT pointer.
crypt32: Fix the CryptReleaseContext() prototype.
crypt32: Add some missing CERT_XXX_ID constants.
crypt32: Add FIXMEs for a couple of missing includes.
winapi: Remove some dead code.
atl: Update win32.api to fix the winapi_check warnings.
Assorted spelling fixes.
d3d9: Declare the D3DPERF_Xxx() functions in d3d9.h.
dnsapi: Define DNS_STATUS as LONG instead of long to improve Win64 compatibility.
dnsapi: Add some constants.
gdiplus: Use the gdiplus type, REAL, rather than FLOAT.
imagehlp: Add two missing fields.
dbghelp: Better match the PSDK types, especially with regards to constness.
dxdiagn: Use quotes to include ddraw.h. Fixes a winapi_check warning.
netapi32: Add missing #include directives to the netapi32 headers.
oleaut32: Fix a signed/unsigned mismatch.
d3d8: Better match the PSDK types and fix the winapi_check warnings.
comctl32: Update win32.api to fix the winapi_check warnings.
advapi32: Update win32.api to fix the winapi_check warnings.
crypt32: Add and use HCRYPTPROV_LEGACY and HCRYPTPROV_OR_NCRYPT_KEY_HANDLE.
gdiplus: Fix a couple of prototypes in the spec file.
opengl32/tests: Add missing '\n' to ok() call.
winapi_check: FLOAT is a float.
netapi32: Fix the NetUseAdd() calling convention.
d3d9: Update win32.api to fix the winapi_check warnings.
mapi32: Add a skeleton mapiform.h header with a proper prototype for MAPIOpenLocalFormContainer().
kernel32/tests: Re-balance the curly parentheses so winapi_check can parse the file.
imagehlp & dbghelp: Add the IMAGEAPI and DBHLPAPI macros.
advapi32: We have cfgmgr32.h now.
msi: MsiProvideComponentFromDescriptorA/W() is not supposed to be defined in msi.h.
dnsapi: The DNS APIs don't take PIP4_ARRAYs anymore (for IPv6 compatibility).
crypt32: Better match the PSDK types and fix the winapi_check warnings.
mapi32: Add missing #include directives.
dwmapi: Add dwmapi.h and update win32.api to fix the winapi_check warnings.
imagehlp: Better match the PSDK types, especially with regards to constness.
mscoree: Add cor.h and mscoree.idl and fix some semi-stub prototypes.
netapi32: Add fixmes for the headers that are still missing and thus cannot be included in lm.h.
netapi32: Add lmuseflg.h and include it from lmuse.h.
mapi32: Add a prototype for MAPIAdminProfiles.
msi: Fix the MsiEnumProductsEx*(), MsiQueryComponentState*() and MsiProvideQualifiedComponentEx*() prototypes.
ddraw: Better match the PSDK types and fix the winapi_check warnings.
winreg.h: Add RRF_RT_ANY.
pdh/tests: Add missing '\n' to ok() calls.
netapi32: Add some missing prototypes in the lmaccess.h, lmshare.h and lmwksta.h headers.
dnsapi: Better match the PSDK types, especially with regards to constness.
winapi_check: Fix a couple of dll names.
ntdll: Fix the RtlQueryInformationActivationContext() .spec prototype to match its implementation.
crypt32/tests: Fix compilation on systems that don't support nameless unions.
urlmon: Fix compilation on systems that don't support nameless unions.
wintrust: Fix the CryptCATAdminReleaseCatalogContext() prototype and better match the PSDK types.
mapi32: Remove redundant protections against duplicate header inclusion.
hhctrl.ocx: Update win32.api to fix the winapi_check warnings.
wined3d: Update win32.api to fix the winapi_check warnings.
localui: Update win32.api to fix the winapi_check warnings.
hlink: Add a missing prototype and update win32.api to fix the winapi_check warnings.
advapi32: Add a prototype for RegDeleteKeyValue*().
wininet: #undef some macros to avoid a conflict between openssl/ssl.h and wincrypt.h.
wininet: Add a skeleton winineti.h header with fixed prototypes for [GS]etUrlCacheConfigInfo*(), DeleteIE3Cache() and IsUrlCacheEntryExpired*().
ddrawex: Better match the PSDK types and fix the winapi_check warnings.
kernel32: Don't get stuck if the debugger exits without signaling the event.
netapi32: Update win32.api to fix the winapi_check warnings.
d3drm: Update win32.api to fix the winapi_check warnings.
imm32: Add a couple of missing prototypes and update win32.api to fix the winapi_check warnings.
msi: Better match the PSDK types, remove some now unused types from win32.api, and update it to fix the winapi_check warnings.
mscoree: Update win32.api to fix the winapi_check warnings.
gdi32: Update win32.api to fix the winapi_check warnings.
Assorted spelling fixes.
d3d8/tests: DXGetErrorString8() prints 'Unknown' for too many hresults which makes diagnosis impossible. So print the raw code instead.
kernel32: Update win32.api to fix the winapi_check warnings.
wined3d: Add a '\n' to a Wine trace.
userenv: Add a skeleton userenv.h header and use it.
userenv: Update win32.api to fix the winapi_check warnings.
wined3d: '0x' is redundant with the '#' format modifier.
mapi32: Update win32.api to fix the winapi_check warnings.
mprapi: Update win32.api to fix the winapi_check warnings.
wing32: Update win32.api to fix the winapi_check warnings.
pdh: Update win32.api to fix the winapi_check warnings.
kernel32/tests: Test the debugger startup and crashed processes exit code.
H. Verbeet (4):
wined3d: Set SFLAG_INSYSMEM when WINED3DLOCK_DISCARD is passed to IWineD3DSurfaceImpl_LockRect.
wined3d: Add definitions and detection for GL_NV_half_float.
wined3d: Properly load FLOAT16_2 and FLOAT16_4 vertex data.
wined3d: Only report 16 bit float declaration types as supported if we support them.
Hans Leidekker (4):
wininet: Don't crash on NULL first or last parameter in InternetCrackUrlW.
wininet: Also set last error on NULL first parameter in InternetCreateUrl{A, W}.
wininet: Implement INTERNET_OPTION_CALLBACK in InternetSetOption{A, W}.
wininet: Process caller supplied headers after inserting connection and authorization headers, not before.
Huw Davies (4):
wininet: Fix the case when Proxy or ProxyBypass is NULL.
ole32: Fix a few comments.
ole32: Factor out the running object test into a separate function.
ole32: The default handler needs to have its own implementation of IPersistStorage.
Hwang YunSong(황윤성) (2):
winecfg: Updated Korean resource.
write: New Korean resource.
Jacek Caban (16):
widl: Use correct bytes in write_value.
widl: Added nonbrowsable attribute handling.
widl: Added displaybind attribute handling.
widl: Reorder switch cases to keep alphabetical order.
mshtml.idl: Added some missing attributes.
mshtml: Added mshtml.tlb.
mshtml.tlb: Fixed a typo in copyright header.
mshtml: Added mshtml.tlb registration.
mshtml: Added HTMLWindow's IDispatch methods implementation.
winhttp: Added winhttp.dll.
uuid: Added IID_IProxyManager.
mshtml: Fixed QueryInterface failures on IE7.
mshtml: Added IHTMLWindow::get_external implementation.
shdocvw: Added GetExternal implementation.
shdocvw: Wrong PostData VT is not an error.
mshtml: Release typelib in PROCESS_DETACH.
James Hawkins (14):
msi: Keep track of the wildcard record index.
msi: Use a more unique property separator.
msi: Treat an empty string and a NULL string as the same value.
msi: Add a stub implementation of MsiSourceListEnumSourcesA.
msiexec: Implement a stub MSIServer service.
msi: Add tests for joining three tables.
msi: Reimplement joins to allow joining any number of tables, each of arbitrary size.
msi: Fix the size allocated for the deferred custom action string.
msi: Add tests for MsiQueryComponentState.
msi: Forward MsiQueryComponentStateA to MsiQueryComponentStateW.
msi: Implement the MSIINSTALLCONTEXT_MACHINE context for MsiQueryComponentState.
msi: Implement the remaining contexts for MsiQueryComponentState.
msi: Simplify MsiQueryComponentState, with more tests.
msi: Implement the UnpublishFeatures standard action.
Janusz Tomczak (6):
avifil32: Fix Polish translation.
comdlg32: Fix Polish translation.
hhctrl.ocx: Fix Polish translation.
msvfw32: Fix Polish translation.
mpr: Fix Polish translation.
oledlg: Fix Polish translation.
Jason Edmeades (9):
comdlg32: Save dialog works if fred\ entered as filename.
cmd: Add support for wildcards in copy.
cmd: Fix comment to accurately reflect the function.
cmd: Remove some debug code.
dpnet: Implement directplay lobbied application stubs.
user32: Skip system menu entries when using keyboard.
cmd.exe: Wait when launching GUI pgms in batch.
setupapi: Add test to show setupapi does not handle single quotes.
advpack: Show fixme when advpack fails to prompt user for directory.
John Klehm (2):
inkobj: Add stub header for inkobj dll.
inkobj: Add stub implementation of inkobj dll.
Juan Lang (45):
crypt32: A decoded message's parameters are dependent on its type.
crypt32: Correct type of a decoded signed message.
crypt32: Store decoded signed content in message.
crypt32: Test getting parameters from decoded signed messages.
crypt32: Change type to avoid unnecessary casting.
crypt32: Implement getting some parameters from a decoded signed message.
crypt32: Add tests for message stores.
crypt32: Only destroy a decoded message's hash if it's been created.
crypt32: Implement message stores.
crypt32: Test getting more parameters from a decoded signed message.
crypt32: Implement getting inner content of a decoded signed message.
crypt32: Separate decoding PKCS signer info into internal and external versions.
crypt32: Implement getting signer info from a decoded signed message.
crypt32: Implement getting the signer cert info from a decoded signed message.
crypt32: Add CryptMsgControl stub.
crypt32: Add missing definitions.
crypt32: Simplify alignment calculation.
crypt32: Add a few traces.
crypt32: Get rid of attribute certs from signed info, they're not supported anyway.
crypt32: Support getting the inner content OID from a decoded signed message.
crypt32: Use the outer content's signature algorithm rather than the public key's embedded algorithm.
crypt32: Remove bad special case, it isn't necessary since the outer content specifies the hash algorithm.
crypt32: Add CERT_ID_XXX defines.
crypt32: Get rid of bogus check and improve traces for unexpected alt name entry types.
crypt32: Test encoding/decoding a couple more alt name entry types.
crypt32: Implement encoding OID and directory name alt name entries.
crypt32: Introduce a OID decoding function that ignores the tag and use it where the caller already checks the tag.
crypt32: Implement decoding OID and directory name alt name entries.
crypt32: Add and use a helper function for getting cert properties.
crypt32: Fix typo in key context property test, and the problems it hid.
crypt32: Test encoding a cert with a public key.
crypt32: Test encoding a cert with a subject key identifier extension.
crypt32: Test and fix getting a certificate context's key identifier property.
crypt32: Support finding certificates by cert id.
crypt32: Implement CertRDNValueToStr for UTF-8 strings.
crypt32: Introduce cryptasn debug channel to quiet down crypt traces.
crypt32: Fix typo.
crypt32: Use the authority key identifier to search for a certificate's issuer.
crypt32: Test and correct finding a subject certificate.
crypt32: Add a couple traces.
crypt32: According to MSDN, inner content is only decoded when the content type is data.
crypt32: Correct loading OID functions from the registry.
crypt32: Use real certificates to test finding subject certificates, and correct finding them.
crypt32: Trace more return values.
crypt32: Add stub for I_CryptGetAsn1Decoder.
Kirill K. Smirnov (3):
winecfg: Values list should be NULL-terminated.
kernel32: Do not append empty lines to the console history.
wineconsole: Rearrange control elements in Russian resources.
Lei Zhang (1):
ntdll: Add Bolivian time zone info.
Louis Lenders (1):
shell32: Define avi resource #164.
Luis C. Busquets Pérez (3):
ntdll: Update Nt stdcalls for stubs of Zw.
kernel32: Export RestoreLastError.
dpnlobby: Add dpnlobby that forwards to dpnet.dll.
Maarten Lankhorst (23):
winealsa: Increase performance of wavein getposition.
winealsa: Increase performance of waveout getposition.
winealsa: Always commit at least 3 periods in dsoutput.
dsound: Replace buffer critical section with a rw-lock.
dsound: Reset state when stopping device.
dsound: Small mixer optimizations.
dsound: Fix locking in mixer.
dsound: Silence the IDirectSoundBuffer_Initialize warnings.
dsound: Remove some more unused variables.
dsound: Constify DSOUND_CheckEvent.
winealsa: Implement a light form of locking for dsoutput.
dsound: Add a registry setting for hel buffer length.
dsound: Get rid of DS_HEL_FRAGS.
dsound: Add SndQueueMin to have less lock contention in mixer.
dsound: Move resampling away from mixer thread.
winealsa: Fix GetPosition in dsoutput.
winealsa: Fix Lock in dsoutput.
winealsa: Don't commit data on Stop and Play.
winealsa: wavein has LPWAVEINCAPSW not LPWAVEOUTCAPSW.
dsound: Sound acceleration fixes.
dsound: Make timer more robust.
dsound: Acceleration fixes for wavein emulation.
dsound: Make hardware acceleration work again.
Marcus Meissner (1):
kernel32/tests: Fixed size to MultiByteToWideChar.
Michael Stefaniuc (6):
ntdll: Match the definition of NtQueryEvent() with its declaration.
winefile: Use SendMessageW instead of SNDMSG.
inkobj: Remove break after return. Found by Smatch.
winex11.drv: Move the TRACE before the return. Found by Smatch.
dsound: Remove redundant NULL check before HeapFree. Found by Smatch.
mshtml: Remove const in front of REFIID as that is a macro that already starts with const.
Mikołaj Zalewski (2):
write.exe: Add a new program that calls wordpad.exe.
user32: CallWindowProc[AW] for mismatched built-in winprocs should take into account if the window is Unicode.
Misha Koshelev (19):
msi: Use SysAllocString/SysFreeString for BSTR members of EXCEPINFO structure.
urlmon: Set the queue tail to the new task when pushing a task onto the tail of the queue.
urlmon: Use BSCF_ values passed to report_data to keep track of download state.
urlmon: Report BINDSTATUS_DOWNLOADINGDATA on BSCF_INTERMEDIATEDATANOTIFICATION.
urlmon: Report total data read in this bind operation to OnDataAvailable, not the size of the available buffer.
urlmon: Do not fill stream buffer on every report_data, native doesn't.
Revert "urlmon: Report BINDSTATUS_DOWNLOADINGDATA on BSCF_INTERMEDIATEDATANOTIFICATION."
Revert "urlmon: Use BSCF_ values passed to report_data to keep track of download state."
urlmon: Call IBindStatusCallback_OnStopBinding only if this actually is the last ReportData.
urlmon: Send BINDSTATUS_DOWNLOADINGDATA if we do not send BEGINDOWNLOADDATA or ENDDOWNLOADDATA.
urlmon/tests: Fix todo_wine's to show the IServiceProvider interface is not queried on wine from CreateAsyncBindCtx.
urlmon/tests: Declare the bind flags as a global variable in url tests.
urlmon: Add support for synchronous binding.
urlmon/tests: Add tests for synchronous vs asynchronous binding.
urlmon/tests: Keep track of download state in tests.
urlmon/tests: Add test for binding to a URL from which a very short response is received.
urlmon/tests: Fix clipformat test.
urlmon: Do not use BindToStorage_hack for INTERNET_SCHEME_HTTP.
urlmon/tests: Call CHECK_CALLED(OnProgress_SENDINGREQUEST) for FILE_TEST since we SET_EXPECT it.
Nigel Liang (8):
winecfg: Add trackbar to set screen resolution in graphics tab.
winecfg: Add menu font settings to desktop integration tab.
winecfg: Read/write registry in unicode.
winecfg: Remove bad default setting for logpixels registery.
winecfg: Fix crash caused by calling set_reg_key with NULL value.
winecfg: Fix apply button always available in graphics tab bug.
winecfg: Fix crash in graphics tab.
winecfg: Fix crash when remove app button is pressed in applications tab.
Paul Vriens (22):
localspl/tests: Use skip if localspl can't be loaded.
advapi32/service: Set correct error when the service doesn't exist.
advapi32/service: Test for too small buffer.
advapi32/service: Fix GetServiceDisplayNameA for service with no displayname.
advapi32/service: Be a bit more consistent.
advapi32/tests: Use skip when we don't have enough rights.
advapi32/service: Cater for domain in the test.
include/pdhmsg.h: Add some defines.
msi/registry: Use the return value of squash_guid.
setupapi/tests: Use GetModuleHandleA instead of LoadLibraryA.
winhttp: Fix compile/install issue.
advapi32/service: Cater better for domain in test.
winetest: Skip tests for which the dll is missing.
winecfg: Fix virtual desktop selection.
shlwapi/tests: Use GetModuleHandleA instead of LoadLibraryA.
kernel32/tests: Changed skip message.
kernel32/tests: Create paths after checking availability of functions.
winecfg: Show version again in About box.
advapi32/tests: Fix typo.
snmpapi/tests: Run tests again on win98 and NT4.
msi/tests: Run tests again on win98 and NT4.
snmpapi/tests: Be more verbose on missing functions.
Peter Beutner (2):
msvcrt: Add _makepath() tests.
msvcrt: Fix _makepath().
Peter Dons Tychsen (3):
server: Added the install driver privilege to the default user.
faultrep: Add a stub dll.
dinput: Allow the use of the standard Joystick GUID when calling CreateDevice.
Ralf Beck (1):
winealsa.drv: Correct midi input program change + channel aftertouch.
Rob Shearman (8):
secur32: Split the NTLM credential and context handles into separate objects.
secur32: Remove valid_session_key from NegoHelper since it is only ever set and not read.
include: Add declarations for URLOpenStreamA/W, URLOpenBlockingStreamA/W and URLOpenPullStreamA/W.
urlmon: Implement stubs for URLOpenBlockingStreamA/W and URLOpenStreamA/W.
urlmon: The pcbRead parameter for IInternetProtocol::Read is optional, so fix the protocol implementation to check for this.
urlmon: Implement URLOpenBlockingStreamA/W and URLOpenStreamA/W.
urlmon: Add tests for URLOpenStreamW and URLOpenBlockingStreamW.
urlmon: Check some of the input parameters to URLOpenStreamA/W & URLOpenBlockingStreamA/W for NULL.
Robert Millan (1):
ddraw: Remove thread safety FIXMEs.
Robert Reif (2):
msvcrt: Add _aligned_malloc functions.
msvcrt/tests: Add _aligned_malloc tests.
Roderick Colenbrander (27):
wgl: Fix a BadMatch error resulting from ignoring that iPixelFormat stars counting from 1.
wgl: Fix another BadMatch error by giving a pbuffer its own GLXContext.
wgl: Add WGL_NV_float_buffer and WGL_NV_texture_rectangle support.
wgl: Use correct types and pixelformats for pbuffers.
wgl: Enable WGL_EXT_swap_control by default even when the GLX version isn't there.
wgl: Add WGL_ATI_pixel_format_float/WGL_ARB_pixel_format_float support.
wgl: wglBindTexImageARB should return TRUE on success.
wgl: Replace glReadPixels in wglBindTexImage2D by the MUCH faster glCopyTexImage2D.
wgl: Fix compilation on systems without GLX_RGBA_FLOAT_ARB.
wined3d: Compile against standard GL headers.
wgl: Silence an error in ConvertPixelFormatWGLtoGLX.
wgl: GetPixelFormat fix for offscreen formats.
wgl: SetPixelFormat should fail on the root window.
wgl: Print more debug info.
wgl: Support WGL_FLOAT_COMPONENTS_NV in wglGetPixelFormatAttrib*.
wgl: wglChooosePixelFormatARB returns the total number of matching pixelformats and not the number of pixelformats stored in the buffer.
wined3d: Another devmode bug.
wined3d: Don't call ActivateContext between ENTER_GL/LEAVE_GL.
wined3d: Use UINT instead of uint.
wined3d: Move fake context code over to WGL.
wined3d: Prepare pbuffer code for WGL transition.
wined3d: Move over to WGL.
wgl: Correctly check GLX capabilities. Use client GLX extensions on ATI hardware to work around driver bugs.
wgl: Rewrite ChoosePixelFormat.
wined3d: Better pixelformat selection code.
wined3d: Add better pixelformat selection code for pbuffers.
wgl: Make sure onscreen pixelformats are on top in wglChoosePixelFormatARB.
Stefan Dösinger (25):
wined3d: Split up the format table.
wined3d: Store the gl format table in the gl info structure.
wined3d: A more dynamic initialization of the gl pixel formats.
d3d8: Skip volume test if volume textures are not supported.
d3d8: Only test pixel shaders for refcounting if they are supported.
d3d8: Only test cube textures if they are supported.
d3d8: Only test volume textures if they are supported.
d3d8: Use a less demanding format for the depth stencil test.
d3d8: Only test pixel shaders if they are supported.
ddraw: Table fog may be unsupported.
ddraw: Some drivers return DDERR_INVALIDPARAMS if DXTn surfaces aren't supported.
wined3d: Downgrade an ERR.
ddraw: SetDisplayMode may fail.
d3d9: Some visual test fixes.
d3d9: Check for volume texture support before running the volume test.
d3d9: Deal with failing surface creation.
d3d8: Skip tests if d3d is not supported.
d3d9: Do not fail if d3d9 is not available.
wined3d: WINED3DSAMP_MAXMIPLEVEL fixes.
wined3d: Present requires the swapchain's context.
ddraw: Implement IDirect3DDevice7::DrawIndexedPrimitiveStrided.
d3d: Add a simple offscreen rendering test.
wined3d: Remove link collection from vertexdeclaration.c.
wined3d: Determine used streams at vdecl creation.
wined3d: Store the position_transformed flag in the vdecl.
Tijl Coosemans (5):
wineoss: Add SNDCTL_MIXERINFO support.
wineoss: Avoid SNDCTL_DSP_GETTRIGGER.
ntdll: Implement CDROM_Verify for FreeBSD.
configure: Remove check for libxpg4.
loader: Use thr_self syscall to get thread id on FreeBSD.
Tim Schwartz (1):
lmuse.h: Add structures needed by NetUseAdd().
Tomas Carnecky (1):
configure: Check whether linker supports --enable-new-dtags.
Vitaliy Margolen (5):
dinput: Fix typo.
dinput: Fix mapping of axes ids to property ids.
dinput: Fix handling of dead-zone in evdev joystick.
dinput: Fix POV calculation.
dinput: Reuse common code and definition.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.42 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Support for activation contexts and side-by-side assemblies.
- Many more gdiplus functions.
- More messaging support in crypt32.dll.
- Many HTTP protocol handling fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.42.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.42.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.41:
Alec Berryman (1):
itss: Replace malloc/free with HeapAlloc/HeapFree.
Alexander Nicolaysen Sørnes (3):
wordpad: Add date/time dialog.
wordpad: Add date/time toolbar button.
wordpad: Resize rebar control on window resize.
Alexandre Julliard (38):
kernel32: Wait in overlapped Read/WriteFile even when no overlapped structure is passed.
server: Merge APC processing into the select request.
kernel32: Always clear the I/O status block count before calling ntdll functions.
widl: Added support for floating-point constants.
winealsa: Make sure we can set volume before reporting WAVECAPS_VOLUME.
ntdll: Move private data to make room in the TEB for the activation context data.
kernel32: Move activation context creation to ntdll (based on a patch by Eric Pouech).
ntdll: Implemented handling of the per-thread activation context stack.
ntdll: Add infrastructure for loading a manifest file or resource.
ntdll: Add parsing of the processor architecture in manifests.
ntdll: Add parsing of the version in manifests (based on a patch by Jacek Caban).
ntdll: Add infrastructure for loading manifest dependencies (based on a patch by Eric Pouech).
ntdll: Abstract the entity array type as we need it for assemblies too.
ntdll: Added manifest lookup in global winsxs directory (based on a patch by Jacek Caban).
ntdll: Skip xml comments in manifests.
ntdll: Cope with missing assemblyIdentity elements in manifests.
ntdll: Add support for optional flag in dependencies.
ntdll: Don't fail to load manifests that contain unknown elements or attributes.
ntdll: Add support for abbreviated empty elements in manifests.
gdi32/tests: Don't test default char, it doesn't have to be always the same.
user32/tests: Flush events more aggressively in mouse input test.
ntdll: Check existing dependencies in activation context before adding a new one.
ntdll: Don't add an empty assembly when creating an activation context.
ntdll: Create the process activation context at initialization time.
ntdll: Create the per-module activation context at module load time.
ntdll: Store the base directory for an assembly (based on a patch by Eric Pouech).
ntdll: Improve some activation context traces.
ntdll: Fix return status when failing to load the associated manifest for a module.
ntdll: Initial implementation of RtlQueryInformationActivationContext.
ntdll: Use activation contexts information to load dlls (based on a patch by Jacek Caban).
ntdll: Activate the module's activation context while resolving imports and attaching.
ntdll: Support single quotes around XML attribute values.
crypt32: Don't use off_t for memory offsets.
libwine: Get rid of the lookup in the top dlls/ dir, all dlls are named correctly now.
ntdll: Simply store the assembly type without interpreting it.
msvcrt: Fixed buffer allocation in _getcwd/_wgetcwd.
msvcrt: Fixed errno setting in malloc, HeapAlloc doesn't set last error.
msvcrt: Get rid of the now unused strndup/wstrndup functions.
Anatoly Lyutin (3):
user32: Add comment to a function.
cmd: Use toupperW instead of toupper.
kernel32/tests: Add test for GetShortPathNameW.
Andrew Talbot (11):
winedump: Cast-qual warnings fix.
comdlg32: Cast-qual warning fix.
dplayx: Cast-qual warning fix.
dbghelp: Cast-qual warnings fix.
comctl32: Cast-qual warning fix.
kernel32: Cast-qual warning fix.
comcat: Cast-qual warning fix.
msi: Cast-qual warning fix.
msxml3: Cast-qual warning fix.
oleaut32: Constify some variables.
oleaut32: Constify some variables.
Aric Stewart (3):
user32: Change SetDeskWallPaper spec.
ws2_32: Initialize the address to 0 in ws_sockaddr_ws2u.
wininet: Strip Accept-Encoding from http/1.0 requests.
Damjan Jovanovic (4):
ws2_32: Update WSASendTo's iovec properly.
tools: Associate wine with the application/x-executable MIME type.
tools: Add basic support for the startup notifications standard.
ws2_32: Sending 0 bytes shouldn't cause an infinite loop.
Detlef Riekenberg (8):
include/winspool.h: Add missing struct.
spoolss: Add a stub for ImpersonatePrinterClient.
winspool: Use printenv_t for GetDriverInfoFromReg.
winspool: Use correct path for 16bit drivers.
winspool: Return the full path for the driver.
winspool: Enable all levels for EnumPrinterDrivers + GetPrinterDriver.
winspool: Return the full path in DRIVER_INFO_2 and 3.
winspool: Return most fields for DRIVER_INFO_4 and 6.
Dmitry Timoshkov (6):
shlwapi: Fix parameter types of SHGetIniStringW.
shell32: Add a cache for queried shell folder interfaces.
rpcrt4: Fix the buffer bounds check.
winuser.h: Add RealChildWindowFromPoint declaration.
winex11.drv: Constify the pen dash data.
advapi32: Rename the test to better represent the tested functionality.
Eric Pouech (14):
ntdll: Added basic structures for storing activation context assembly information.
ntdll: Added support for the assembly leaves of activation contexts.
ntdll: Added parsing of public key token in manifests.
ntdll: Added parsing of hash attributes in manifests.
ntdll: Added parsing of the inheritance flags in manifests.
ntdll: Added parsing of the language attribute in manifests.
ntdll: Added parsing of the description element in manifests.
ntdll: Added parsing of the external proxy element in manifests.
ntdll: Added parsing of the clrClass and clrSurrogate elements in manifests.
ntdll: Added parsing of the binding redirect element in manifests.
ntdll: Implemented ActivationContextDetailedInformation option in RtlQueryInformationActivationContext.
ntdll: Implemented AssemblyDetailedInformationInActivationContext option in RtlQueryInformationActivationContext.
ntdll: Implemented FileInformationInAssemblyOfAssemblyInActivationContext option in RtlQueryInformationActivationContext.
ntdll: Implemented RtlFindActivationContextSectionString.
Evan Stade (73):
gdiplus: Added GdipSetPathFillMode.
gdiplus: Added smoothing modes.
gdiplus: Added compositing quality.
gdiplus: Added interpolation mode.
gdiplus: Added pixel offset mode.
gdiplus: GdipSaveGraphics/GdipRestoreGraphics stubs.
gdiplus: Constructor tests for GpGraphics.
gdiplus: Added GpGraphics save/restore tests.
gdiplus: Simplified GdipDrawPath by moving more of the code to the helpers.
gdiplus: Added GdipFillPath.
gdiplus: Added GdipSetPenLineCap197819.
gdiplus: Export GdipSetPenLineJoin.
gdiplus: Added GdipSetPenMiterLimit.
gdiplus: Initial path iterator implementation.
gdiplus: Added GdipPathIterCopyData.
gdiplus: Added GdipPathIterNextSubpath.
gdiplus: Added GdipPathIterRewind.
gdiplus: Added GdipSetPenDashStyle.
gdiplus: Added GdipAddPathBeziers.
gdi32: Added PolyDraw tests.
gdi32: Added PATH_PolyDraw.
gdiplus: Added GdipClonePen.
gdiplus: Added GdipGetPenDashStyle.
gdiplus: Added GdipMultiplyMatrix.
winex11.drv: Draw dashed lines for extended pens.
gdi32: Improved PolyDraw in path closed case.
gdiplus: Added GdipScaleMatrix.
gdiplus: Added GdipTranslateMatrix.
gdiplus: Added GdipRotateMatrix.
gdiplus: Added GdipCreateMatrix.
gdiplus: Initial custom line caps implementation.
gdiplus: Added GdipCloneCustomLineCap.
gdiplus: Added custom line cap setters.
gdiplus: Use atan2 instead of atan.
gdiplus: Added rendering of custom line caps.
gdiplus: Associate a brush with a pen.
gdiplus: Added GdipCloneBrush.
gdiplus: Updated GdipClonePen to clone pen's members by value, not reference.
gdiplus: Added GdipSetPenStartCap.
gdiplus: Added rendering of fill-path type custom line caps.
gdiplus: Use base inset for custom line caps.
gdiplus: Added startcap rendering.
gdiplus: Change atan2 to gdiplus_arctan2.
gdiplus: Added GdipSetPenBrushFill.
gdiplus: Added GdipGetPenColor stub.
gdiplus: Added GdipGetPenBrushFill.
gdiplus: Added GdipSetSolidFillColor and GdipGetSolidFillColor stubs.
gdiplus/tests: Added pen brush fill test.
gdiplus: Implemented GdipSetSolidFillColor/GdipGetSolidFillColor.
gdiplus: Implemented GdipSetPenColor.
gdiplus: Added GdipFillPolygonI.
gdiplus: Added GdipSetPageUnit.
gdiplus: Use page unit when drawing.
gdiplus: Added support for more page units.
gdiplus: Added GdipSetPageScale/GdipGetPageScale.
gdiplus: Added GdipCloneMatrix.
gdiplus: Added GdipSetWorldTransform/GdipGetWorldTransform.
gdiplus: Use world transform when drawing points.
gdiplus: Create gdi pen every time gdi+ pen is used.
gdiplus: Make pen width depend on world transform.
gdiplus: Added GdipCreateMetafileFromEmf stub.
gdiplus: Image getter stubs.
gdiplus: Limit fixme output.
gdiplus: Added GdipGetImageType stub.
gdiplus: Added GdipCreateMetafileFromWmf stub.
gdiplus: Added GdipDisposeImage stub.
gdiplus: Added GdipLoadImageFromStreamICM stub.
gdiplus: Fix memory leak.
gdiplus: Added GdipAddPathEllipse.
gdiplus/tests: Added GdipAddPathEllipse test.
gdiplus: Fix arc2polybezier.
gdiplus: Added GdipSetPenDashArray/GdipGetPenDashArray.
gdiplus/tests: Added pen dash array tests.
H. Verbeet (10):
wined3d: Fix STATE_IS_ACTIVELIGHT.
wined3d: glXSwapBuffers needs a GLX context.
wined3d: Correctly handle normalized vertex declaration data types.
wined3d: Fix the shader version on some instruction tokens.
wined3d: Don't modify the blending parameters in state_blend().
wined3d: Trace the declaration element type in primitiveDeclarationConvertToStridedData().
wined3d: Pass the correct target to glMultiTexCoord.
wined3d: Fix the stretch_rect_fbo() declaration to match the implementation.
d3d9: Trace the Format parameter to IDirect3DDevice9Impl_CreateTexture as hexadecimal.
wined3d: Flip the scissor rect when rendering offscreen.
Hans Leidekker (4):
pdh: Add a stub processor time counter.
pdh: Add more tests and make them pass.
pdh: Implement and test PdhLookupPerfIndexByName{A, W} and PdhLookupPerfNameByIndex{A, W}.
pdh: Implement and test PdhAddEnglishCounter{A, W} and PdhCollectQueryDataWithTime.
Huw Davies (4):
kernel32: Overlapped pipe tests.
wininet: Certain options of InternetQueryOption can take a NULL handle, so don't do the NULL handle check at the beginning.
wininet: Stubs for IsUrlCacheEntryExpired[AW].
wininet: Stub for InternetQueryFortezzaStatus().
Hwang YunSong(황윤성) (5):
cmd: Updated Korean resource.
wordpad: Updated Korean resource.
localui: New Korean resource.
wordpad: Updated Korean resource.
net: New Korean resource.
Jacek Caban (10):
ntdll: Beginnings of manifest parsing.
ntdll: Add parsing of dependencies in manifests.
ntdll: Added parsing of file elements in manifests.
ntdll: Added parsing of the asmv2:hash element in manifests.
ntdll: Store the windows directory too.
kernel32: Added FindActCtxSectionStringA implementation.
urlmon: Change some gotos to return.
mshtml: Make sure we have associated listener before calling OnStopRequest.
kernel32: Added a number of activation context tests.
mshtml: Fixed a typo.
James Hawkins (16):
msi: Load the AdminProperties stream if the package is an Admin package.
msi: Only call a custom action remotely if the type is msidbCustomActionTypeInScript.
vdmdbg: Add a stub implementation of VDMEnumTaskWOW.
Revert "msi: Only call a custom action remotely if the type is msidbCustomActionTypeInScript."
msi: Only double the size if the remote call is from MsiGetPropertyA.
msi: Add more tests for the ALTER command.
msi: Implement reference counting for tables, manipulated with the HOLD and FREE sql commands.
msi: Implement adding columns using the ALTER command.
msi: Ref count temporary columns and release them when necessary.
msi: Properly delete the columns view.
msi: Add tests for the MSIMODIFY_UPDATE command.
msi: Add handling for the MSIMODIFY_UPDATE command.
msi: Use a different separator as a semi-colon may separate values in the CustomActionData.
msi: Add more tests for MSIMODIFY_UPDATE.
msi: Initialize the size parameter.
msi: Implement the MSIMODIFY_UPDATE command in the SELECT view.
Jason Edmeades (4):
user32: Correct trace to log calculated values rather than uninitialized ones.
user32: MDI tile and cascade should not resize non-resizable windows.
cmd: Fix trap when batch pgm runs another batch pgm.
comctl32: Fix missing toolbar button with HINST_COMMCTRL.
Jeremy White (2):
gdi32: Do not fill in the color table if lpvBits is NULL.
gdi32: Added a test for the case where lpvBits in GetDIBits is NULL and the bitcount is 0.
Juan Lang (51):
crypt32: Add test showing extra trailing bytes should be tolerated in encoded data.
crypt32: Fix decoding sequences with extra trailing data.
crypt32: Store crypt provider in decode message.
crypt32: Partially implement updating decode messages.
crypt32: Implement decoding data messages (when opened in non-streaming mode).
crypt32: Move digested data encoding to encode.c.
crypt32: Add tests for decoding a hash message.
crypt32: Remove a redundant line.
crypt32: Implement decoding hash messages.
crypt32: Fix a bad comment.
crypt32: Add a few tests for decoded message parameters.
crypt32: Implement getting content of a data message.
crypt32: Use property list for decoded message parameters.
crypt32: Fix typo.
crypt32: Add a couple more parameter tests for hash messages.
wincrypt: Add more missing definitions.
msi: Return FALSE from MsiGetMode for MSIRUNMODE_OPERATIONS.
crypt32: Store (most) parameters of a decoded hash message.
crypt32: Store hash algorithm ID along with other parameters when decoding a hash message.
crypt32: Implement querying computed hash of a decoded hash message.
crypt32: Move decoding hash messages to a helper function.
crypt32: Add tests for opening signed message to encode.
crypt32: Add stub encoded signed message.
crypt32: Introduce function to encode an array of items as a set.
crypt32: Check for and fail on indefinite-length encoding.
crypt32: Add tests for updating signed encoded messages.
crypt32: Add tests for signed message encoding.
crypt32: Add a partial stub for updating a signed encoded message.
crypt32: Add tests for opening non-detached signed messages, and clarify detached open.
crypt32: More parameter checking for opening signed encoded messages.
crypt32: Hash and sign data when updating signed messages.
crypt32: Implement getting the hash for each signer of a signed encoded message.
crypt32: Partially implement encoding signed messages.
crypt32: Implement getting outer content of a signed message.
crypt32: Separate signer handles from signer info to avoid unnecessary memory allocation.
crypt32: Use consistent types for storing and encoding signed encode data.
crypt32: Add tests for getting an encoded signed message's parameters.
crypt32: Implement getting version from an encoded signed message.
crypt32: Use set encoding function for encoding PKCS signed info.
crypt32: Test and implement encoding signed messages with certificates.
crypt32: Test and implement encoding signed data messages with CRLs.
crypt32: Test and implement getting the encoded signers from an encoded signed message.
crypt32: Test getting the hash from a hash message with an invalid index.
crypt32: Add initial tests for decoding signed messages.
crypt32: Remove redundant assignment.
crypt32: Actually skip content when skipping an item in a sequence.
crypt32: Don't check tag in CRYPT_DecodeDERArray, caller already does.
crypt32: Partially implement decoding of signed messages.
crypt32: Test and fix encoding and decoding of attributes in PKCS signers.
crypt32: Trace a few more items when decoding.
crypt32: Test and implement encoding signed messages with authenticated attributes.
Kirill K. Smirnov (2):
shell32: Add support for SEE_MASK_NO_CONSOLE flag.
programs/start: use SEE_MASK_NO_CONSOLE flag as default.
Konstantin Kondratyuk (1):
ntdll: Add Samara time zone.
Kovács András (1):
include: Add some idl headers for d3d10.
Maarten Lankhorst (7):
dsound: Make sure secondary_remainder and buflen are aligned to primary buffer in mixer.
dsound: Fix CheckEvent in mixer.
dsound: Some cosmetic changes.
winealsa: Minor fixes to ds output.
wineoss: Make sure writepos < buflen for dsrender.
winmm: Don't operate on freed data in timer.
dsound: Allow mixing the same buffer multiple times if we are looping.
Marcus Meissner (1):
crypt32: Fixed wrong allocation size.
Martin Fuchs (1):
shell32: Implementation of SheGetDirA/W and SheChangeDirA/W.
Matt Jones (2):
kernel32: Added test for bad arguments to SetThreadPriority, test for correct error value.
server: Only commit SetThreadPriority if new priority is correct.
Michael Stefaniuc (17):
shell32: Fix missing unlock on an error path. Found by Smatch.
wined3d: Remove unreachable code: break after return. Found by Smatch.
ntdll: Don't produce unreachable code during conditional compilation. Found by Smatch.
winhelp: Add missing case label "default". Found by Smatch (unreached code).
dlls: Remove unreachable break after return/break. Found by Smatch.
programs: Remove unreachable break after return/break. Found by Smatch.
tools: Remove unreachable break after return/break. Found by Smatch.
oleaut32: Remove a return after return.
winefile: Replace malloc with HeapAlloc.
wldap32: Don't produce unreachable code during conditional compilation. Found bySmatch.
winefile: Move some self contained functions to use explicit W functions.
winefile: Change the settings functions to use the W registry functions.
mscms: Don't produce unreachable code during conditional compilation.
wined3d: Remove a return after a return. Found by Smatch.
winefile: Move the font choosing code to a separate function.
winefile: Change choose_font() and init_output() to the W form.
ntdll: Remove a break after a break. Found by Smatch.
Mikołaj Zalewski (4):
msxml3/tests: Avoid a crash that happens on some native systems.
comctl32: toolbar: Test and fix invalid indexes passed in TB_ISBUTTON*.
comctl32: tooltips: Remove broken support for non-NULL-terminated strings in TOOLTIPS_GetDispInfo[AW].
user32/tests: Simplify a test.
Misha Koshelev (31):
wininet/tests: Properly handle ERROR_IO_PENDING from InternetQueryDataAvailable.
wininet/tests: Add testing framework and tests for internet status callbacks.
urlmon: Fix HttpProtocol behavior when InternetQueryDataAvailable returns ERROR_IO_PENDING.
wininet: Fix behavior of InternetQueryDataAvailable if INTERNET_FLAG_ASYNC is set.
urlmon: Remove FLAG_CALLED_SWITCH, which is now redundant.
urlmon: Use InternetCloseHandle instead of CloseHandle.
urlmon/tests: Fix http_protocol tests to succeed on Win98.
urlmon/tests: Fix http_protocol tests to succeed when called more than once.
urlmon: Fix HttpProtocol behavior when it is called without the BINDF_FROMURLMON flag.
urlmon: Implement HttpProtocol::Terminate.
urlmon/tests: Add tests for HttpProtocol behavior when it is called without the BINDF_FROMURLMON flag.
urlmon/tests: Add test for BINDVERB_POST in http_protocol.
urlmon: Call HttpOpenRequest with INTERNET_FLAG_KEEP_CONNECTION, INTERNET_FLAG_NO_CACHE_WRITE if appropriate.
urlmon: Actually send the additional headers returned by IHttpNegotiate::BeginningTransaction.
urlmon: Add support for non-GET requests (e.g., POST) in HttpProtocol.
urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and InternetQueryDataAvailable in HttpProtocol.
urlmon: Don't ignore bytes read from IInternetProtocol_Read if hres is not S_OK (e.g., E_PENDING).
urlmon: ReleaseBindInfo in FileProtocol.
urlmon: Add a reference to the IUnknown for Release of STGMEDIUM to account for extra call to ReleaseBindInfo.
urlmon/tests: Add tests for calls to IBindStatusCallback_QueryInterface.
urlmon/tests: Add tests for calls to IHttpNegotiate interfaces as exposed by IBindStatusCallback.
urlmon: Wrap IHttpNegotiate2 interface exposed by IBindStatusCallback as done by native.
urlmon: If we are using an internal protocol ClassFactory, call its AddRef as the caller must Release the object.
urlmon: LockModule in create_binding_protocol as we ReleaseModule when the object is released.
urlmon: Release IInternetProtocolInfo returned from get_protocol_info when finished with it.
urlmon/tests: Release two objects that should be released but are not.
urlmon: Don't free structures that are used by asynchronous HttpSendRequest until we are sure they won't be used.
urlmon/tests: Fix http protocol tests with absence of BINDF_FROMURLMON to properly expect ReportData.
urlmon/tests: Don't proceed with POST operation (that will fail) if we run out of memory.
urlmon/tests: Rename received_data event to more general name event_complete.
urlmon/tests: Make http protocol tests refractory to timing issues.
Nigel Liang (2):
winex11.drv: Implement XIMPreEditCaretCallback.
winex11.drv: Take into account position of preedit area in PreEditCaretCallback.
Paul Vriens (18):
msi/tests: Don't create a directory that's not needed.
advapi32/service: Check combination of service-type and start-type.
advapi32/service: Test for duplicate displayname.
advapi32/service: Cleanup (long lines and a typo).
advapi32/service: Check for duplicate displayname.
advapi32/service: Some tests for DeleteService.
advapi32/service: lpBinaryPathName is mandatory.
advapi32/service: Some 'refcount' tests.
advapi32/tests: Run on NT4 again.
advapi32/service: Add tests for GetDisplayName.
advapi32/service: Handle is checked before servicename.
advapi32/service: Add another test for GetServiceDisplayName.
advapi32/service: Close a handle on failure.
advapi32/service: Add tests for GetServiceKeyName.
advapi32/service: More tests for GetServiceDisplayName.
advapi32/service: Test GetServiceDisplayNameA for service with no displayname.
advapi32/service: Forward GetServiceDisplayNameA to GetServiceDisplayNameW.
advapi32/service: Fix buffersize calculations for GetServiceDisplayNameW.
Peter Dons Tychsen (1):
x11drv: Fix the special case where windows have WS_CHILD and WS_POPUP.
Rob Shearman (18):
ole32: Remove some dead code.
rpcrt4: Even though FC_ENUM16 is an unsigned type, the highest allowable value that can be marshalled is SHRT_MAX, not USHRT_MAX.
rpcrt4: Check to make sure there is enough data in the buffer during unmarshalling, so that the code doesn't try to read beyound the end of the buffer.
rpcrt4: Never allocate memory for the discriminant in union_arm_unmarshall as the memory is part of the union and has already been allocated.
rpcrt4: Add some more RPC to NCA status code mappings.
advapi32: Fix ComputeStringSidSize to work with SIDs with one sub authority.
advapi32: Fix a typo in ParseStringAclToAcl which caused the ACE to be written inside of the ACL memory.
advapi32: Add the size of the security descriptor structure to the size of memory required in ParseStringSecurityDescriptorToSecurityDescriptor.
advapi32: Don't crash in ConvertStringSecurityDescriptorToSecurityDescriptorW if LocalAlloc fails.
advapi32: Set the right pointer so that StringAcl is updated correct in ParseAceStringRights.
advapi32: Add tests for ConvertStringSecurityDescriptorToSecurityDescriptor.
rpcrt4: Convert bind ack and nack reject reasons into RPC status codes when binding.
mshtml: OleDocumentView_UIActivate should call IOleInPlaceUIWindow_SetActiveObject and IOleInPlaceFrame_SetBorderSpace.
mshtml: Pass the correct DOCHOSTUITYPE value to IDocHostUIHandler_ShowUI.
mshtml: Call IDocHostUIHandler_HideUI and IDocHostUIHandler_ShowUI when changing an UI active window to be in edit mode.
mshtml: Set focus to the Gecko window in OleInPlaceActiveObject_OnFrameWindowActivate.
mshtml: Events are reset when a new document URI is loaded, so re-initialise them in start_binding.
mshtml: Handle Ctrl-Home and Ctrl-End in edit mode.
Roderick Colenbrander (7):
opengl32: Relax extension checking.
opengl: WGL_ARB_render_texture support.
wgl: Set pbuffer dimensions in HDC.
wgl: Fill the format table with offscreen pixelformats which are needed for pbuffers.
wgl: Replace the GLXFBConfigIDs in the pixelformat list with real GLXFBConfigs.
wgl: Enable offscreen pixelformats for pbuffers.
wgl: Fix a typo in the WGL_TEXTURE_TARGET_ARB emulation code.
Stefan Dösinger (7):
ddraw: Some d3d-only code fixes.
wined3d: Create the stateblock in Init3D.
wined3d: Attempt to clean up fbos only if a gl surface is destroyed.
wined3d: Allocate render target management members in Init3D.
wined3d: Find the shader constant limit at adapter init time.
wined3d: Set the pow2 sizes in gl surface private setup.
wined3d: Do not fail if the adapter info can't be initialized.
Steven Edwards (1):
version: VerQueryValueA/W NULL pointer check.
Tim Schwartz (1):
netapi32: Add NetUseAdd() stub.
Vitaliy Margolen (9):
msvcrt: Preserve registers when calling unwind function.
pdh: Forward PdhOpenQuery to PdhOpenQueryW.
dinput: Use PostMessage instead of SendMessage. Remove message window.
dinput: Use CALLWINDPROC hook to monitor focus loses away from acquired windows.
user32/test: Destroy no longer needed test dialog windows.
user32: Add test for SetForegroundWindow(desktop).
server: Treat desktop as a top-level window.
winex11drv: Correctly react to focus loss away from Wine.
dinput: Use more messages as a possible indication of the foreground window changes.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.41 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- A number of gdiplus functions.
- More complete pdh.dll implementation.
- Support for MSI remote calls.
- Messaging support in crypt32.dll.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.41.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.41.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.40:
Alexander Nicolaysen Sørnes (3):
comdlg32: fontdlg: Respect the CF_NOSCRIPTSEL flag.
wordpad: Disable copy/cut in menu when appropriate.
wordpad: Prompt for saving file changes.
Alexandre Julliard (41):
configure: Fix the strip command line for Mac OS.
configure: Export the shared library extension instead of hardcoding .so.
configure: Don't use a default soname if a library is not found, leave it undefined.
configure: Don't set LDPATH if not needed.
configure: Change WINE_GET_SONAME to allow it to be used as a replacement for AC_CHECK_LIB.
configure: Move the dll checks earlier in the file to make them available for library checks.
configure: Merge the libhal existence check with the soname check.
configure: Merge the libcurses existence check with the soname check.
configure: Merge the libcapi20 existence check with the soname check.
configure: Merge the libsane existence check with the soname check.
configure: Make the libcups soname check depend on the header check.
configure: Make the libjack soname check depend on the header check.
configure: Make the libfontconfig soname check depend on the header check.
configure: Make the libssl soname check depend on the header check.
configure: Make the libjpeg soname check depend on the header check.
configure: Added checks for libpng.
ntdll: Add check for null pointer in NtQuerySystemInformation(SystemModuleInformation).
configure: Merge the libGL existence check with the soname check.
configure: Merge the libXrandr existence check with the soname check.
configure: Merge the libXrender existence check with the soname check.
configure: Merge the libXinerama existence check with the soname check.
configure: Get rid of the no longer used check for libtxc_dxtn.
Maketest.rules: Add dependency on IDL headers for crosstest objects.
configure: Make the libXcursor soname check depend on the header check.
configure: Make the libXi soname check depend on the header check.
configure: Merge the libfreetype existence check with the soname check.
configure: Merge the libX11 and libXext existence check with the soname check.
configure: We no longer need the shared library extension.
aclocal: Add macros for logging messages about missing features.
configure: Move notices about missing features next to the corresponding checks.
configure: Add a few more notices for missing packages.
include: Add some definitions for manifest resources.
winedump: Add RT_MANIFEST resource type.
configure: Fix typo in liblcms notice check.
kernel32: Implemented GetTickCount64.
user32/tests: Flush messages more aggressively in a couple of tests.
msi/tests: Comment out call to function that is still a stub in Wine.
user32: Check both A and W proc for previously allocated winprocs.
user32: Allocate a dual A/W winproc for DefWindowProc.
dnsapi: Fix some potential infinite loops because of an unsigned loop counter.
wldap32: Fix some potential infinite loops because of an unsigned loop counter.
Anatoly Lyutin (1):
cmd: Use toupperW instead of toupper.
Andrew Talbot (10):
ole32: Constify some variables.
oleaut32: Constify some variables.
ole32: Constify some variables.
winelib: Cast-qual warnings fix.
ole32: Constify a variable (and fix a typo concerning its level of indirection).
ole32: Cast-qual warnings fix.
comdlg32: Cast-qual warning fix.
ole32: Cast-qual warning fix.
winedump: Cast-qual warnings fix.
winedump: Cast-qual warnings fix.
Aric Stewart (4):
imm32: Implementation of GCS_CURSORPOS.
include: Add a ddk header for imm.
imm32: Implement Locking/Unlocking IMC and IMCC functions.
imm32: Use the COMPOSITIONSTRING in hCompStr.
Ben Hodgetts (2):
ws2_32: Don't tell users to run Wine as root when sockets not creatable.
winecfg: Clean up Graphics tab and remove broken neutral translation.
Bernd Buschinski (1):
gdiplus: Fix test typo/compile error.
Chris Robinson (4):
winemp3: Check the right macro when defining TRUE.
winemp3: Use head_check to check for valid headers.
winemp3: Remove global mpstr pointer.
winemp3: Remove function declarations with no definition and unused macros.
Damjan Jovanovic (2):
shell32: DragQueryFile doesn't count the null terminator.
ntdll: Use the win16 current directory for win16 processes.
Detlef Riekenberg (4):
setupapi: Avoid crash in SetupCloseInfFile.
advpack+setupapi: Remove unneeded checks before SetupCloseInfFile.
ntdll: Avoid crash with WINEDEBUG=+snoop.
printui: Parse args for PrintUIEntryW.
Dmitry Timoshkov (4):
gdi32: Do not report an error if a requested to add font is already loaded.
include: Add HandleToUlong, UlongToHandle, UintToPtr, UlongToPtr compatibility macros.
ntdll: Remove an artificial limitation in NtQuerySecurityObject.
shlwapi: Fix some spec entry definitions.
Emmanuel Maillard (1):
winecoreaudio: MIDIIn_MessageHandler: Fix non-SysEx messages parsing.
Evan Stade (50):
oleaut32: Added support for decoding some PNG files.
oleaut32: Save load time format of pictures.
gdiplus: Use SaveDC, RestoreDC in GdipDrawLineI.
gdiplus: Call EndPath() in GdipDrawLineI in case there is an open path.
gdi32: Don't access DC in PolyDraw after releasing handle.
gdiplus: Added SetPenEndCap.
gdiplus: Rendering of linecaps.
gdiplus: Added linecap rendering for GdipDrawBezier.
gdiplus: Public declaration of GdipSetPenEndCap.
gdiplus: Added GdipAddPathLine2.
gdiplus: Added GdipClosePathFigure.
gdiplus: Added GdipClosePathFigures.
gdiplus: Added GdipGetPointCount.
gdiplus: Added GdipGetPathPoints.
gdiplus: Added GdipGetPathTypes.
gdiplus: Updated draw_pie to use SaveDC/RestoreDC.
gdiplus: Updated GdipDrawRectangleI.
gdiplus: GdipDrawCurve2 now uses SaveDC()/RestoreDC() and end caps.
gdiplus: Fixed a bug in helper function draw_polybezier.
gdiplus: Make LineCapArrowAnchor look more like it does in windows.
gdiplus: Added constructor and destructor test for gdiplus paths.
gdiplus: Fixed bug in GdipGetPathPoints().
gdiplus: Added a test for GdipAddPathLine2.
gdiplus: Changed calls to floor to floorf.
gdiplus: Moved two inline helpers to the header.
gdiplus: Added GdipAddPathArc.
gdiplus: Added GdipAddPathArc test.
gdiplus: Updated GdipDrawArc to use SaveDC()/RestoreDC()/line caps.
gdiplus: Updated GdipDrawLines to use SaveDC()/RestoreDC()/end caps.
gdiplus: Added GdipStartPathFigure.
gdiplus: Added GdipDrawPath.
gdiplus: Added draw_polybezier error checking.
gdiplus: Added draw_polyline error checking.
gdiplus: Added basic matrix implementation.
gdiplus: Added GdipTransformMatrixPoints.
gdiplus: Added GdipCreateMatrix2 test.
gdiplus: Added GdipTransformPath.
gdiplus: Added GdipGetPathWorldBounds.
gdiplus: Fixed memory leak in GdipDeletePath.
gdiplus: Added GdipTransformMatrixPoints test.
gdiplus: Added GdipGetPathWorldBounds test.
gdiplus: Changed the way the direction of the endcap is calculated to make LineCapArrowAnchor direction match Windows better.
gdiplus: Added GdipSetPenLineJoin.
gdiplus: Use passed pen in GdipAddPathWorldBound.
gdiplus: Added more GdipGetPathWorldBounds tests.
gdiplus: Improved GdipGetPathWorldBounds handling of both matrix and pen's effect on bounding box.
gdiplus: Added GdipGetPathFillMode.
gdiplus: Added GdipResetPath.
gdiplus: Added GdipAddPathPath.
gdiplus: Added GdipAddPathPath test.
Francois Gouget (3):
ddraw/tests: Fix compilation on systems that don't support nameless unions.
Assorted spelling fixes.
ddraw/tests: Fix compilation on systems that don't support nameless unions.
H. Verbeet (8):
wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap for cards without support for NV_REGISTER_COMBINERS as well.
wined3d: Only call activate_dimensions() if the texture is used.
wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for supported units.
wined3d: In tex_colorop() & tex_alphaop(), only check the mapped stage against GL_LIMITS(textures) if the texture is used.
wined3d: Cleanup shader_glsl_load_psamplers().
wined3d: Implement dsx & dsy shader instructions.
wined3d: Advertise A32B32G32R32F render target support.
wined3d: Advertise VTF support.
Hans Leidekker (9):
dwmapi: Add a stub implementation for DwmIsCompositionEnabled.
pdh: Add tests for opening and closing queries.
pdh: Add an uptime counter source based on GetTickCount.
pdh: Add tests for Pdh{Add, Remove}Counter and PdhCollectQueryData.
pdh: Implement and test PdhSetCounterScaleFactor and PdhGetFormattedCounterValue.
pdh: Implement and test PdhGetRawCounterValue.
pdh: Implement and test PdhGetCounterInfo{A, W} and PdhGetCounterTimeBase.
pdh: Use GetTickCount64 instead of GetTickCount.
pdh: Fix two typos.
Huw Davies (6):
winex11.drv: Pass root_window to XCreatePixmap to avoid BadDrawable errors.
winex11.drv: Move the PictFormats into an array.
winex11.drv: Use global Pictures for the tiles.
gdi32: Using a bitmap font as the fallback sans serif is a very bad idea.
kernel32: Swap incorrect use of buffers.
kernel32: SetNamedPipeHandleState() is a stub, so for now don't check its return value.
James Hawkins (56):
msi: Implement MsiSourceListGetInfoA.
msi: Add tests for MsiSourceListGetInfo.
msi: Validate MsiSourceListGetInfo parameters.
msi: Return ERROR_BAD_CONFIGURATION if the SourceList key does not exist.
msi: Return ERROR_SUCCESS if the PackageName property is not present.
msi: Add the IWineMsiRemotePackage interface.
msi: Add the IWineMsiRemoteCustomAction interface.
msi: Handle remote calls to MsiGetActiveDatabase.
msi: Handle remote calls to MsiGetProperty.
msi: Handle remote calls to MsiSetProperty.
msi: pcchValue represents the length of szValue in TCHARS, not bytes.
msi: Add support for the MSICODE_PATCH option.
msi: Add tests to show when the SourceList is published to the registry.
msi: PackagePath must also include the package name.
msi: Delay publishing of the SourceList until the PublishProduct action.
msi: Unpublish the product when it is entirely removed.
msi: Only publish the product if at least one feature is to be installed.
msi: Set the WindowsInstaller value in RegisterProduct instead of PublishProduct.
msi: Add tests for MsiQueryFeatureState.
msi: Open the correct key and return INSTALLSTATE_ADVERTISED if it's missing.
msi: Return INSTALLSTATE_ADVERTISED if the component list is empty.
msi: Return INSTALLSTATE_BADCONFIG if we can't decode the first component.
msi: Read the components state directly from the registry.
msi: Handle remote calls to MsiProcessMessage.
msi: Handle remote calls to MsiDoAction.
msi: Handle remote calls to MsiSequence.
msi: Handle remote calls to MsiGetTargetPath.
msi: Handle remote calls to MsiGetSourcePath.
msi: Handle remote calls to MsiSetTargetPath.
msi: Handle remote calls to MsiGetMode.
msi: Handle remote calls to MsiSetFeatureState.
msi: Handle remote calls to MsiGetFeatureState.
msi: Handle remote calls to MsiGetComponentState.
msi: Handle remote calls to MsiSetComponentState.
msi: Handle remote calls to MsiGetLanguage.
msi: Handle remote calls to MsiSetInstallLevel.
msi: Fix use of BSTRs.
msi: Handle remote calls to MsiFormatRecordW.
msi: Forward MsiFormatRecordA to MsiFormatRecordW.
msi: Handle remote calls to MsiEvaluateCondition.
msi: Enable remote custom actions.
msi: Match the changes made by the hand-generated and API-generated transforms.
msi: Delete msifile after the tests.
msi: Test adding columns with data in a transform.
msi: Handle adding columns in transforms.
msi: Check for NULL transform, as there may be no transforms for the _Columns or _Tables tables.
msi: Fix current _Property table tests and add more tests.
msi: Add tests for adding properties in a transform.
msi: Add tests for adding properties with a transform during an install.
msi: Fix a copy and paste error.
msi: Reload properties as they may have been changed by a transform.
msi: Fix automation.c compile for MSVC.
msi: Fix three tests that were failing in Windows.
msi: Fix compilation in MSVC.
msi: Add a test for installing from different current working directories.
msi: Add a test for running an ADMIN install.
Juan Lang (44):
crypt32: Use skip to avoid failures where support is missing.
crypt32: Don't fail when CryptVerifyCertificateSignatureEx is missing, use skip (and get rid of unnecessary indenting).
crypt32: Accept OSS errors.
crypt32: Accept OSS errors as well.
crypt32: Accept ERROR_BADKEY in addition to ERROR_INVALID_HANDLE.
crypt32: Accept ERROR_INVALID_PARAMETER in addition to ERROR_PATH_NOT_FOUND (and remove no-longer-useful checkFileStoreFailure).
crypt32: Pass function pointers to CryptMsgBase_Init rather than rely on callers to initialize them.
crypt32: Add more tests for opening a data message for encoding.
crypt32: Make a copy of a passed-in stream info rather than assuming the pointer will live forever.
crypt32: Test that inner content OID is ignored for data messages.
crypt32: Add tests for streamed encoding of data messages.
crypt32: Test and fix CryptMsgGetParam for streamed messages.
crypt32: Add a stub decode message implementation.
crypt32: Implement getting the type of a decode message.
crypt32: Add some tests for updating decode messages.
crypt32: More decode message update tests.
crypt32: Implement CryptSIPLoad.
crypt32: Implement CryptSIPGetSignedDataMsg, CryptSIPPutSignedDataMsg,
rsaenh: Get rid of the hash idle state, native doesn't behave as though it has one.
crypt32: Make some encoding functions available outside encode.c.
crypt32: Implement streamed encoding of definite-length data messages.
crypt32: Add open tests for hash messages.
crypt32: Add tests for updating hash messages opened to encode.
crypt32: Test opening hash messages to encode with streaming.
crypt32: Add a stub hash message implementation.
crypt32: Add tests for getting hash message params.
crypt32: Implement getting a hash message's hash value.
crypt32: Simplify hash value tests.
crypt32: Test updating hash messages with NULL stream output function.
crypt32: Partially implement updating hash messages.
crypt32: Add more missing defines.
crypt32: Implement getting hash message version.
crypt32: Add tests for hash message encoding.
crypt32: Copy data in hash message update.
crypt32: Add a helper function to copy params.
crypt32: Don't check if msg is NULL, tests show native doesn't either.
crypt32: Detached hash messages don't contain the content, so don't make a copy of it.
crypt32: Add tests for retrieving the content of a non-finalized (detached) message.
crypt32: Introduce an algorithm id encoding function that encodes missing parameters as NULL
crypt32: Implement retrieving a hashed message's content.
crypt32: Relax a test, the specific error isn't so important.
crypt32: Change finalized from a boolean to a state and use it to simplify message updating.
crypt32: Introduce an updated state, and use it to remove boolean "begun".
crypt32: Update comments about hash message version numbers.
Julio E. Gonzalez P (1):
ntdll: Add PYT and PYST time zones.
Kai Blin (1):
ws2_32: Handle IPv6 in WSAStringToAddress.
Ken Thomases (6):
winecoreaudio: Enable DirectSound HEL mode for output.
winecoreaudio: Enable DirectSound HEL mode for input.
winecoreaudio: Improve safety of iterations when returning WAVEHDRs to client.
winecoreaudio: Correct the AudioBufferList allocated for input.
winecoreaudio: Protect against AudioUnitRender clobbering our buffer list.
winecoreaudio: Report format error on sample rate mismatch when opening wave-in device.
Kovács András (1):
d3d10: Add stub for d3d10.dll.
Lei Zhang (2):
start.exe: Put double quotes around arguments with spaces.
winex11.drv: Remove old dnd code.
Maarten Lankhorst (6):
winealsa: Silence the buffer warning more often.
dsound: Revert "dsound: Disable property sets if hardware doesn't support it.".
dsound: Clean up some unused variables.
dsound: Remove some more unused variables.
dsound: Fix division by zero in DSOUND_Calc3DBuffer.
dsound: Simplify IDirectSoundBufferImpl_GetCurrentPosition.
Mark Adams (2):
iphlpapi: Add support for GetTcpTable on Mac OS X.
iphlpapi: Fix byte ordering of Linux ports.
Markus Gömmel (2):
comctl32/datetime: Added a missing InvalidateRect to update display after WM_ENABLE.
user32: Center MessageBox dialogs to desktop, as Windows does.
Michael Stefaniuc (2):
ntdll: Fix missing unlock on error path. Found by Smatch.
msvcrt: Remove superfluous casts of void pointers to other pointer types.
Mikołaj Zalewski (2):
comctl32: toolbar: The iImage in TBN_GETDISPINFO should be initialized to -1.
comctl32: toolbar: We should send TBN_GETDISPINFOW even for ANSI controls (with testcase).
Misha Koshelev (7):
gdi32: Slightly simplify result handling in PolyDraw.
urlmon/tests: Make http protocol mime type test pass on native.
urlmon: Improve ObtainUserAgentString conformance to native.
urlmon/tests: Add tests for ObtainUserAgentString.
urlmon: Implement HttpProtocol.
urlmon: Fix HttpProtocol_Start and strndupW to work properly with native wininet.
urlmon: Make HttpProtocol conform with native wininet on wine.
Paul Vriens (29):
advapi32/tests: Add tests for OpenSCManagerA.
user32/tests: Use skip.
user32/tests: Use skip.
advapi32/tests: Use skip when we don't have enough rights.
advpack/tests: Create the temporary inf-file in a directory where we are allowed to write.
kernel32/tests: Use skip when functions are not available.
kernel32/tests: Don't crash on win98.
kernel32/tests 2/2: Use skip for not implemented function.
advapi32/tests: Use skip for not implemented function.
secur32/tests: Use skip when functions are not available.
advapi32/tests: Add tests for OpenServiceA.
advapi32/tests: Add tests for CloseServiceHandle.
ddraw/tests: Use skip instead of trace.
ddraw/tests: Use skip instead of trace.
kernel32/tests: Add a forgotten if statement.
advapi32: Handle to Service Control Manager is checked first.
advapi32: Create specific access rights for service control manager handles.
gdiplus: Don't use struct member before NULL check (Coverity).
advapi/service: Simplify DeleteService by using RegDeleteTree.
advapi/service: Fix possible handle leak.
advapi/service: First tests (and fixes) for CreateService.
advapi/service: Check if we have enough access rights to create a service.
advapi/service: Check for empty servicename and binaryname.
programs/cmd: Do the assignment after the return to avoid a missing free() (Coverity).
advapi/service: Create specific access rights for service handles.
advapi/service: Check servicetype and starttype.
advapi32/tests: Use skip instead of trace.
crypt32/tests: Skip test if we don't have enough rights.
mscms/tests: Skip tests if we don't have enough rights.
Pedro Araujo Chaves Jr (1):
winspool.drv: Fallback to the first found printer as default printer.
Peter Dons Tychsen (1):
winex11: Fix X11DRV_DIB_GetImageBits() when target bitmaps are larger than fetched.
Rob Shearman (9):
secur32: Don't free the password in InitializeSecurityContextW to enable the credentials handle to be re-used in further InitializeSecurityContextW calls.
secur32: Add tests for multiple use of a credential handle.
rpcrt4: Translate between NCA and RPC status codes.
rpcrt4: Call RPCRT4_Send directly from PKT_RECEIVE handler in server.
rpcrt4: Return a fault packet if the proc num exceeds the index of the last function available for the interface.
ntdll: The impersonation level in NtDuplicateToken should be taken from the SecurityQualityOfService member of ObjectAttributes if present.
rpcrt4: Make binding to an interface a function of RpcAssoc instead of
msxml3: Implement IXMLDOMNode::get_text for CDATA, processing instruction and comment nodes.
mshtml: Implement HTMLElement_insertAdjacentHTML and HTMLElement_insertAdjacentText.
Romain Iehl (3):
dsound: Fix bug preventing correct calculation of the sound parameters
dsound: Simplify the calculation of sound attenuation due to distance.
dsound: Correct field access.
Stefan Dösinger (19):
wined3d: rsq and rcp use the .w component if no swizzle is given.
wined3d: Select onscreen contexts based on the thread id.
wined3d: Create multiple contexts for onscreen render targets.
ddraw: Z buffers can be attached to offscreen d3d devices.
ddraw: Fix an incorrect iface->impl cast.
ddraw: Materials in the execute buffer are handles.
ddraw: D3DOP_BRANCHFORWARD includes the current instruction size.
ddraw: Read the world matrix correctly.
ddraw: Implement IDirect3DViewport3::TransformVertices.
wined3d: Offscreen rendering from foreign threads.
ddraw: Update the wined3d matrix if a current matrix handle is modified.
ddraw: Y coords are inversed.
wined3d: Do not set streamIsUP in DrawPrimitiveStrided.
wined3d: Implement high order patches.
wined3d: Initialize surfaces at creation.
wined3d: Print the fixed and unfixed vertex warning only when needed.
wined3d: Add CTXUSAGE_CLEAR context usage.
wined3d: Make ActivateContext a bit smaller.
wined3d: Store the last active thread.
Thomas Weidenmueller (2):
shell32: Set current directory when executing files in a shell view.
shlwapi: Use publicly defined structure DATABLOCK_HEADER instead of redefining it locally.
Tim Schwartz (1):
net.exe: Converted strings to resources.
Vitaliy Margolen (9):
dinput: Correct test - use appropriate mouse state structure.
dinput: Keep the list of all the dinput devices created for each IDIrectInput object.
dinput: Keep a list of all IDirectInput objects and check it instead of refcount to create/destroy hook thread.
dinput: Export Mouse and Keyboard GUIDs.
dinput: Handle multiple keyboard and mouse devices.
dinput: Rename set_dinput_hook and call it from the base class.
dinput: Clear static variables after releasing hooks.
dinput: Convert IDirectInput into multi-interface object.
dxdiagn: Add reporting of some display related information.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.40 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Many MSHTML improvements.
- A few more sound fixes.
- Many Direct3D fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.40.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.40.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.39:
Alex Villacís Lasso (6):
quartz: Fix video rendering sizing/positioning bugs.
mciwave: Prevent division by zero when processing non-PCM codec.
winealsa: Reduce writeahead to next multiple of psize greater than 512.
dsound: Make test recover from failure to preserve primary buffer length after SetFormat().
dsound: Reset device playpos/mixpos on buflen change.
winemp3: Announce capability to decode at 48 KHz.
Alexander Nicolaysen Sørnes (3):
wordpad: Use Unicode functions in more places.
wordpad: Set default font effects to 0.
wordpad: Remove unnecessary toolbar resizing code.
Alexandre Julliard (22):
kernel32: Fix VxD open code for the new NtCreateFile syntax for Unix files.
winedos: Fix the device open code for the new NtCreateFile syntax for Unix files.
winedbg: Added support for indirect call with absolute address.
ntdll: Improved the stub behavior of NtQuerySystemInformation(SystemModuleInformation).
server: Don't crash when trying to set a file lock on a device.
makefiles: Build programs that link against libwine twice with appropriate rpaths.
comctl32: Get rid of CharNextW/CharPrevW. Simplify some string functions.
shlwapi: Get rid of CharNextW/CharPrevW. Simplify some string functions.
shell32: Get rid of CharNextW.
advpack: Get rid of CharPrevW.
server: Make crash error message more explicit.
ntdll: Use the standard exception handling for vm86 GP faults too.
mapi32: Get rid of unneeded CharNextA call.
crypt32: Fix incorrect usage of CharNextA.
wineps.drv: List source files explicitly in the makefile to make it easier to parse.
ddraw: Don't link against X libraries.
crypt32: Fix an uninitialized variable compiler warning.
msi: Avoid some redundant checks in MsiCloseHandle.
wrc: Strip C code based on the name of the include file.
wpp: Don't suppress output from C include files, that's up to the user.
ntdll: Don't print traces from async I/O callbacks.
ws2_32: Don't print traces from async I/O callbacks.
Andrew Talbot (11):
msi: Name all or none of the formal arguments in function prototypes.
msvidc32: Constify some variables.
netapi32: Constify some variables.
d3d9/tests: Fix use of uninitialized variable (Coverity).
msi: Fix use of uninitialized variable (Coverity).
ntdll: Constify some variables.
ntdll: Constify some variables.
ntdll: Constify some variables.
ntdll: Constify some variables.
ntdll: Constify some variables.
ole32: Constify some variables.
Aric Stewart (1):
riched20: Make richedit control IME aware.
Damjan Jovanovic (1):
winex11.drv: Added better support for the X file drag protocol.
Dan Hipschman (13):
rpcrt4: Add encapsulated union tests.
rpcrt4: Remove inaccurate comments.
rpcrt4: Fix bug calculating union switch type.
rpcrt4: Fix typo in union buffer size calculation.
widl: Add tests for arrays of pointers.
widl: Fix warnings about unused function parameters.
widl: Check for interface pointers in pointer handling.
widl: Check for user types when calculating buffer size.
widl: Get simple enums working.
widl: Fix crash dealing with anonymous unions.
rpcrt4/tests: Wrap a try/except block around tests.
rpcrt4: Allow enums as union switch types.
widl: Allow enums as union switch types.
David Adam (1):
wordpad: French translation for the view item.
Detlef Riekenberg (10):
winspool/tests: Add tests for AddPortEx.
localspl/tests: Add tests for AddPortEx.
printui: Add stub for printui.dll.
printui: Add version resource.
ntprint: Add a stub for ntprint.dll.
ntprint: Add version resource.
ntprint: Implement PSetupCreateMonitorInfo.
ntprint/tests: Add initial test.
ntprint: Implement PSetupEnumMonitor.
ntprint/tests: Add tests for PSetupEnumMonitor.
Dmitry Timoshkov (4):
user32: Insert menu item only after contents of the passed in menu item info have been verified.
user32: When inserting a menu item make sure that MDI system buttons stay on the right side.
user32: Make MDI get_client_info checks more strict.
shell32: Make SHGetDesktopFolder use a cached instance of IShellFolder.
Emmanuel Maillard (1):
configure: Fix libxml2 detection on Mac OS X.
Evan Stade (10):
gdiplus: Implemented GdipDrawBezier.
gdiplus: Implemented GdipDrawPie/GdipFillPie.
gdiplus: Implemented GdipDrawArc.
gdiplus: Implemented GdipDrawCurve2.
gdiplus: Implemented GdipDrawLines.
gdiplus: Implemented GdipCreatePath and GdipDeletePath.
gdiplus: Fix broken graphics path constructor.
gdiplus: Fix erroneous pen error checking.
gdiplus: Tidy up graphics constructor.
gdi32: Added missing call to GDI_ReleaseObj.
Francois Gouget (11):
regedit: Add missing '\n' to an error message.
regedit: Don't allow square-bracketed registry paths on the command line (to match native).
regedit: Merge getRegClass() and getRegKeyName() to form parseKeyName().
winapi_check: ULONG_PTR is a 'long --pointer', not a 'long'.
shlwapi: Update win32.api to fix the winapi_check warnings.
crypt32/tests: Fix compilation on systems that don't support nameless unions.
advapi32: Add more RegGetValue() conformance tests, and fix Wine accordingly.
winapi: Add support for GDIPCONST.
gdi32/tests: Run the GetTextMetricsA() tests on Windows 9x too.
ddraw/tests: Fix compilation on systems that don't support nameless unions.
dsound: Add missing '\n' to Wine trace.
H. Verbeet (23):
wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for mapped stages.
wined3d: Mask texture stage state arguments with WINED3DTA_SELECTMASK when comparing them.
wined3d: Use texture2D to sample in pshader_glsl_texdp3tex().
wined3d: Make use of the texUnitMap in drawStridedSlow as well.
wined3d: Fix various incorrect uses of GL_LIMITS(texture_stages) and GL_LIMITS(sampler_stages).
wined3d: Do not mark texture stages > MAX_TEXTURES dirty, they don't exist.
wined3d: Keep track of what stage a texturing unit is mapped to.
wined3d: Keep track of what fixed function texture stages are in use.
wined3d: Split of the mapping of fixed function samplers from IWineD3DDeviceImpl_FindTexUnitMap().
wined3d: Remove the sharing of mapping code for fixed function and pixel shader samplers.
wined3d: Split of the mapping of pixel shader samplers from IWineD3DDeviceImpl_FindTexUnitMap().
wined3d: Rename max_samplers to max_fragment_samplers.
wined3d: Add max_vertex_samplers and max_combined_samplers to WineD3D_GL_Info.
wined3d: Increase the sizes of texturing related arrays, in order to support vertex textures.
wined3d: Map vertex sampler numbers to the correct internal array indices for GetSamplerState and SetSamplerState.
wined3d: Map vertex sampler numbers to the correct internal array indices for GetTexture and SetTexture.
wined3d: Cleanup GL extension detection.
wined3d: Implement texldl.
wined3d: Map vertex samplers to a texturing unit.
wined3d: Check more thoroughly if a stage references a texture.
wined3d: Cleanup device_map_fixed_function_samplers().
wined3d: In device_map_psamplers(), only touch the sampler mapping for samplers that are used by the shader.
wined3d: Get rid of the oneToOneTexUnitMap field.
Hans Leidekker (4):
pdh: Add public headers.
pdh: Implement PdhOpenQuery{A, W} and PdhCloseQuery.
pdh: Implement PdhAddCounter{A, W} and PdhRemoveCounter.
pdh: Implement PdhCollectQueryData.
Huw Davies (5):
wineps.drv: Ignore ExtTextOut calls that occur before the job has started.
oleaut32: Interfaces that derive from IDispatch should be marshaled as VT_DISPATCH.
oleaut32: Implement marshaling of VT_BYREF interfaces.
oleaut32: Handle marshaling of VARTYPE-less FADF_VARIANT safearrays.
oleaut32: Extend _invoke to cope with more args.
Jacek Caban (24):
mshtml: Don't check out VT in exec_fontsize.
mshtml: Move keypress event listener to separated object.
mshtml: Move load event listener to separated object.
mshtml: Get rid of no longer used nsIDOMEventListener interface in NSContainer.
mshtml: Added nsIEmbeddingSiteWindow::SetFocus implementation.
mshtml: Added nsIEmbeddingSiteWindow:[Get|Set]Visibility implementation.
mshtml: Activate nsWebBrowser after creating document window.
mshtml: Notify IOleControlSite about focus changes.
mshtml: Set focus to FALSE in InPlaceDeactivate.
mshtml: Added IOleControlSite tests.
mshtml: Better test of QueryInterface.
mshtml: Added IOleInPlaceUIWindow tests.
mshtml: Added IHTMLDOMNode::get_nodeName implementation.
mshtml: Added beginning DOM tests.
mshtml: Added more QueryInterface tests.
mshtml: Correctly handle delete key in editor mode.
mshtml: Added IDM_DELETE support in QueryStatus.
mshtml: Added Exec(IDM_DELETE) implementation.
mshtml: Don't use dynamic allocation for connection points.
mshtml: Store connection point as a list.
mshtml: Move IConnectionPointContainer to the separated struct.
mshtml: Make connection points container independent.
mshtml: Added IConnectionPointContainer implementation to HTMLBodyElement.
mshtml: Add IID_IPropertyNotifySink and DIID_HTMLTextContainerEvents connection points to HTMLBodyElement.
James Hawkins (20):
msi: Forward MsiApplyPatchA to MsiApplyPatchW.
msi: Implement MsiApplyPatchW.
msi: Patches are applied based on ProductCode, not ProductID.
msi: Send the expected data to set_deferred_action_props.
msi: Properly delete rows from the table, instead of zeroing out the row.
ntoskrnl.exe: Add a stub implementation of KeInitializeTimer.
msi: Fetch the volume name when getting disk info.
msi: Add a stub implementation of MsiQueryComponentStateA.
msi: Add tests for publishing and unpublishing products, features, and components.
msi: Add tests for MsiQueryProductState.
msi: Validate MsiQueryProductCode parameters.
msi: If the user product key exists, the product's state is advertised.
msi: Use the correct registry key when detecting a published product.
msi: Any value of WindowsInstaller besides 0 means the product is installed.
msi: If the UserData product key exists, but the user product key doesn't, the product is absent.
msi: Set the WindowsInstaller value of the UserData product key when publishing the product.
msi: Add support for remote handles.
msi: Reference count the custom action data to avoid freeing the data by another thread.
msi: Add tests that show '!=' is not a valid conditional expression operator.
msi: Ignore invalid conditional expressions when checking the launch conditions.
Jason Edmeades (11):
cmd.exe: Add basic support for && and (...) syntax.
cmd.exe: Pass command structure into WCMD_pipe, not command line itself.
cmd.exe: Pass the command list through so it is available to built in commands.
cmd.exe: GOTO throws away any preloaded multi part/line command.
cmd.exe: Lines starting with REM ignore any multiline/part characters.
cmd.exe: EXIT /b skips any residual commands.
cmd.exe: Parse multipart FOR statements.
cmd.exe: Correctly parse IF ELSE plus multipart/multiline.
cmd.exe: Support IF..ELSE processing tolerate multiline/part lines.
cmd.exe: Fix FOR so it works as 'well' as before.
cmd.exe: for loop by default only matches files.
Jason Green (1):
winscard: Add extended stub for SCardEstablishContext.
Jeff Latimer (3):
hnetcfg: Stub implementation of the dll.
crypt32: Fix possible dereference of NULL ptr.
cabinet: Fix a potential NULL reference.
Juan Lang (18):
wincrypt: Add missing message flags and parameters.
crypt32: Don't return fake HCRYPTMSG from CryptMsgOpenTo*.
crypt32: Add basic tests for CryptMsg functions.
crypt32: Add basic parameter checking to CryptMsgOpenTo*.
crypt32: Add base message type and use it to implement CryptMsgDuplicate and CryptMsgClose.
crypt32: Test CryptMsgOpenToEncode for data messages.
crypt32: Test CryptMsgUpdate for data messages opened to encode.
crypt32: Test CryptMsgGetParam for data messages opened to encode.
crypt32: Stub CryptMsgOpenToEncode for data messages.
crypt32: Add a get param function, use it to implement CryptMsgGetParam.
crypt32: Add an update function, use it to implement CryptMsgUpdate.
crypt32: Store stream info in message.
crypt32: Add a finalized member to message.
crypt32: Implement CryptMsgUpdate for data messages opened to encode.
crypt32: Add a stub get param function for data messages and remove stub message from open function.
crypt32: Add tests for data message encoding.
crypt32: Implement getting bare content for data messages opened to encode.
crypt32: Implement getting content for data messages opened to encode.
Kai Blin (1):
ws2_32: Return WSAEINVAL for unhandled address families in WSAStringToAddress.
Ken Thomases (4):
winecoreaudio: Extract loop, wodNotifyClient for WAVEHDRs in list, to separate function.
winecoreaudio: Move a variable declaration to narrower scope, reduce whitespace.
winecoreaudio: Move notify of completed WAVEHDRs to end of wodReset.
winecoreaudio: Make wodReset fail if called on a closed device.
Kirill K. Smirnov (1):
winhelp: Fix popup window style.
Konstantin Kondratyuk (2):
uninstaller: Add Russian resources.
programs/winefile: Add Russian resources.
Kovács András (1):
Add dwmapi.dll stub.
Lei Zhang (6):
riched20: Add tests for EM_FORMATRANGE.
winex11.drv: Send WM_MOUSEACTIVATE before closing a window.
winex11.drv: Reset focus if application does not want to be activated.
comctl32: Reduce duplicate code between PropertySheetA/W.
comctl32: Reduce duplicate code between PROPSHEET_CollectSheetInfoA/W.
comctl32: Determine if PSH_PROPSHEETPAGE is set once.
Maarten Lankhorst (8):
winealsa: Finally get rid of the thread in alsa directsound acceleration.
dsound: Give rougher estimates for fraglen to satisfy alsa.
dsound: Simplify mixing by removing remixing support, and fix its waveout breakage.
dsound: Tune some parameters for alsa waveout.
winealsa: Optimize GetPosition() more in dsalsa.
dsound/winealsa: Remove writelead for alsa directsound.
winealsa: Silence buffer on allocation.
dsound: Fix calcplayposition to handle mixed amount > buffer length better.
Marcus Meissner (1):
wined3d: Fixed pointer casting and additions.
Michael Stefaniuc (34):
msvcrt: Move definition of 2 static inline functions up and remove the forward declaration of those. Found by sparse.
shlwapi: Do not use wide character constants.
winspool.drv/tests: Specify the arguments of the function in the function.
winmm: Do not dump the version info when loading drivers.
shlwapi: Remove more wide character constants.
riched20: Do not use wide character constants.
setupapi: Do not use wide character constants.
oleaut32: Do not use wide character constants.
ole32: Do not use wide character constants.
comctl32: Do not use wide character constants.
dmloader: Do not use wide character constants.
dsound: Fix missing unlock on an error path. Found by Smatch.
winealsa.drv: Fix missing unlock on the error path. Found by Smatch.
msvcrt: Do not use wide character constants.
gdi32: Multi-character character constants aren't portable as their behaviour is compiler dependent according to the C standard. Found by sparse.
ddraw: Fix missing unlock on an error path. Found by Smatch.
winejack.drv: Fix missing unlock. Found by Smatch.
msacm32: Replace malloc/free with HeapAlloc/HeapFree.
winmm: Replace malloc with HeapAlloc.
cmd: Remove superfluous casts of void pointers to other pointer types.
quartz: Remove superfluous casts of void pointers to other pointer types.
iccvid: Remove superfluous casts of void pointers to other pointer types.
ole32: Remove superfluous casts of void pointers to other pointer types.
oleaut32: Remove superfluous casts of void pointers to other pointer types.
kernel32: Remove superfluous casts of void pointers to other pointer types.
gdi32: Remove superfluous casts of void pointers to other pointer types.
wined3d: Remove superfluous casts of void pointers to other pointer types.
dbghelp: Remove superfluous casts of void pointers to other pointer types.
wininet: Remove superfluous casts of void pointers to other pointer types.
winedos: Remove superfluous casts of void pointers to other pointer types.
janitorial: Remove superfluous casts of void pointers to other pointer types.
winefile: Do not use wide character constants.
winefile: Do not use the TEXT() macro on character constants. The implicit cast from char to WCHAR works as well in UNICODE mode.
comctl32: Replace malloc() with HeapAlloc().
Misha Koshelev (20):
shell32: Conform to native in SHELL_ArgifyW for unquoted %1 in registry keys.
wine.inf: Quote %1 for Msi.Package shell actions per native.
gdi32/tests: Add framework for tests of drawing functions in paths, add test for ArcTo in paths.
gdi32: Fix ArcTo to use proper starting and ending points.
gdi32: Set current position properly after ArcTo.
gdi32: Allow arbitrary start entry types in PATH_DoArcPart, not just PT_MOVETOs.
gdi32: Handle ArcTo in paths as native.
gdi32/tests: Expand framework for tests of drawing functions in paths, add test for AngleArc in paths.
gdi32: Emulate AngleArc using ArcTo.
gdi32/tests: Fix test_widenpath to succeed on Win98.
setupapi: Simplify code as native setupapi does not handle quoted paths.
wine.inf: Fix path to rundll32.exe in inffile/shell/install/command subkey.
winemenubuilder: Create/release semaphore only around call to wineshelllink.
winemenubuilder: Wait for parent process to finish instead of creating RunOnce entry that may never run.
winemenubuilder: Do not WINE_ERR in InvokeShellLinker if we are going to try again.
shell32/tests: Allow individual tests in check_lnk to be todo_wine'd.
shell32/tests: Add test for shell links to existing non-executable files.
shell32/tests: Allow CoCreateInstance to return E_NOINTERFACE to pass on Win98; add skips and display return values.
shell32/tests: Fix tests of IShellLinkA_SetPath to conform on both Windows 98 and XP.
shell32: Fix shelllink creation to non-executable files and remove unnecessary code.
Nigel Liang (1):
winex11.drv: Remove call to XCreateFontSet.
Paul Vriens (13):
crypt32/tests: Don't crash on Vista.
user32/tests: Only do the GetProcAddress once.
mscms/tests: Don't crash on Vista.
mscms/tests: Fix wrong test for failure.
kernel32/tests: Don't crash on Vista.
kernel32/tests: Don't crash (on Vista).
wintrust/tests: Add tests for CryptCATAdminCalcHashFromFileHandle.
advapi32/tests: Add some service related tests.
advapi32/service: Use the correct registry key for the service account.
advapi32/service: Fix wrong key.
advapi32/service: Return (more) correct needed buffersize.
advapi32/service: Make sure we fill all struct members.
advapi32/service: Don't rely blindly on type.
Pedro Maia (1):
shell32: Update paths in Portuguese resource.
Rob Shearman (37):
rpcrt4: Implement encapsulated union NDR functions.
widl: Implement pointer descriptions for all embedded pointer types.
widl: Fix detection of structures with non-conformant strings.
widl: Write out embedded pointers for the element type when writing out arrays.
widl: Always write out pointers if the structure is a pointer structure. Pointer are optional for conformant varying structures.
rpcrt4: Use the offset to array data in embedded pointer format descriptions.
rpcss: Remove lazy timeout mechanism and use __wine_make_system_process instead.
msi: Only use the long name for the file source if the file has one.
mshtml: The SRC value returned from HTMLElement_getAttribute should be an absolute, not relative URL.
mshtml: Implement HTMLElement_setAttribute.
mshtml: Fix HTMLDocument3_get_documentElement to get the right nsIDOMNode.
mshtml: Notify the Gecko stream listener that we stopped binding, if an error occurs in start_binding.
advapi32: Always set the requested fields of the security descriptor according to the info flags in GetNamedSecurityInfoW.
mshtml: Implement HTMLElement_get_children.
rpcrt4: Don't use add on the sizes of array elements to an open-ended structure; use FIELD_OFFSET with the array index instead.
rpcrt4: Add support for ServerAllocSize parameters.
rpcrt4: Add a STUBLESS_FREE phase for freeing the allocated memory in the server function.
rpcrt4: Return a fault packet if the interface/object pair in a request packet aren't registered.
rpcrt4: Close the connection if a protocol error or certain other kinds of errors occur, instead of returning it to the connection pool.
rpcrt4: Translate STATUS_ACCESS_VIOLATION exceptions caught whilst executing the stub function to ERROR_NOACCESS to prevent confusing exceptions occurring in the client.
rpcrt4: When an exception is raised, return the stored exception code instead of the generic RPC_S_CALL_FAILED.
rpcrt4: Store the assoc_group_id field returned from the bind_ack packet and use it when creating further connections in the association group.
rpcrt4: Try a lot harder to resuse existing connections by comparing inside the RpcQualityOfService and RpcAuthInfo objects.
rpcrt4: Set PointerBufferMark to the buffer location immediately after the non-pointer data in complex struct and array marshaling and unmarshaling to keep to the DCE/RPC specification.
rpcrt4: Implement marshalling/unmarshalling for the range NDR type.
rpcrt4: Implement marshalling, unmarshalling and buffer sizing for the context handle type.
rpcrt4: Dereference the pointer passed to the marshaling/unmarshaling/sizing routines in complex types for interface pointers.
msi: Implement MsiGetMode for MSIRUNMODE_SCHEDULED, MSIRUNMODE_COMMIT and MSIRUNMODE_ROLLBACK.
msi: Check the return value of VerQueryValueW in msi_get_disk_file_version.
msi: Free version after using lpVer in msi_get_disk_file_version as lpVer points inside of version.
msi: Fix loading string tables for databases that use 3-byte string references and that have a non-zero codepage (i.e. != CP_ACP).
msi: Fix bytes_per_column for binary types when the database is using 3-byte string references.
msi: Fix transforms to work when the number of bytes per string reference differs to that of the database it is being applied to.
rpcrt4: Remove the unused AuthInfo field from the RpcAssoc structure and Used from RpcConnection.
rpcrt4: Make pointers to RPCRT4_BuildBindHeader and RPCRT4_BuildBindAckHeader const.
rpcrt4: Store the assoc_group_id in the connections.
wine.inf: Add the SystemDrive environment variable.
Stefan Dösinger (26):
d3d9: Hold the lock in IDirect3D9 methods.
d3d9: Hold the lock in methods implemented in device.c.
d3d9: Hold the lock in cubetexture methods.
d3d9: Hold the lock in indexbuffer methods.
d3d9: Hold the lock in Pixelshader functions.
d3d9: Hold the lock in query methods.
d3d9: Release the wined3d query when the d3d9 query is destroyed.
d3d9: Hold the lock in stateblock methods.
ddraw: Test for incorrect surface desc sizes in GetSurfaceDesc.
d3d8: Convert fvfs to vertex declarations.
wined3d: Remove the FVF codepath from drawprim.
wined3d: Unload texture coords for all supported texture stages.
wined3d: Emulate tracking of multiple material properties.
ddraw: Add a test for incorrect surface desc sizes for Lock().
ddraw: Check for incorrect rectangles to DDrawSurface::Blt.
wined3d: Depthfill blits are allowed between BeginScene and Endscene.
d3d9: Hold the lock in suface methods.
d3d9: Hold the lock in swapchain methods.
d3d9: Hold the lock in Texture methods.
d3d9: Hold the lock in Vertexbuffer methods.
d3d9: Hold the lock in VertexDeclaration methods.
d3d9: Hold the lock in VertexShader methods.
wined3d: Move material applying to the state table.
wined3d: Clamp material power to 128.0.
wined3d: Skip the start offset to the source array in IWIneD3DVertexShaderImpl_SetLocalConstantsF.
wined3d: Some point sprite fixes.
Tim Schwartz (2):
net.exe: Add NET STOP.
net.exe: Add missing CloseServiceHandle().
Vitaliy Margolen (4):
dinput: Remove duplicate code.
dinput: Move parent dinput reference into base class.
dinput: Combine all Release functionality into base class.
dinput: Move key state array into object.
Vitaly Budovski (1):
winealsa: Fix incorrect callback private value.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.39 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Many MSHTML improvements.
- Several improvements to the sound support.
- A number of Winsock fixes.
- Several new supported constructs in the IDL compiler.
- Many Direct3D threading fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.39.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.39.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.38:
Alex Villacís Lasso (6):
oleaut32: Support for VT_DISPATCH in VarAbs.
oleaut32: Support for VT_DISPATCH in VarNot.
oleaut32: Support for VT_DISPATCH in VarFix.
oleaut32: Support for VT_DISPATCH in VarInt.
oleaut32: Support for VT_DISPATCH in VarNeg.
oleaut32: Support for VT_DISPATCH in VarRound.
Alexander Nicolaysen Sørnes (12):
wordpad: Split code into set_caption function.
wordpad: Store file name globally.
wordpad: Add file saving support.
wordpad: Improve file reading code.
wordpad: Convert open file dialog to Unicode.
wordpad: Add file saving dialog.
wordpad: Add missing dots to Open menu item.
wordpad: Fix potential buffer overflow.
wordpad: Allow toggling of toolbar.
wordpad: Allow toggling of statusbar.
wordpad: Split toolbar into tool- and formatbar.
wordpad: Use Unicode functions in more places.
Alexandre Julliard (39):
ws2_32: Reimplement WSASendTo along the lines of NtWriteFile.
ws2_32: Call the I/O completion routine as a user APC.
ws2_32: Simplify the async shutdown handling, and remove a bunch of no longer used code.
ntdll: Queue an intermediate user APC routine to free the async info.
server: Remove the extra apc_arg parameter now that user APCs all require the same arg as the kernel APC.
ws2_32: Queue a proper user APC also on immediate success in WSARecvFrom/WSASendTo.
server: Run async I/O APCs from the SIGUSR1 handler.
ntdll: Get rid of the num_async_io counter in the TEB.
kernel32: Rewrite GetOverlappedResult for the new async I/O behavior.
ws2_32: Rewrite WSAGetOverlappedResult for the new async I/O behavior.
advapi32: Convert the service list to a standard list.
server: Add support for system processes, that can be signaled to exit when all non-system processes are done.
explorer.exe: Mark explorer as a system process.
advapi32: Mark service processes as system processes, and exit when all user processes are done.
winedevice: Accept the shutdown service control.
widl: Get rid of the SIGSEGV handler, this only makes things harder to debug.
winmm: Fix computation of sleep time until next timeout.
winmm: Get rid of the WINE_MM_IDATA global structure, there's only one instance anyway.
cmd.exe: Silence a FIXME.
msvcrt: Set the correct ebp value before calling the local unwind handler.
include: Add DO_NO_IMPORTS ifdefs where needed.
libwine: Set install name to an absolute path for the installed library on Mac OS.
configure: Replace some obsolete macros to avoid warnings.
tools: Upgrade the config.guess/config.sub scripts.
msxml: Don't use VariantClear on an uninitialized variant.
winmm: Convert the timer list to a standard Wine list.
winmm: Maintain the timer list sorted by expiration time.
winmm: Initialize the timer critical section statically.
shell32: Fix contents of string returned in load_path.
shell32: Remove a redundant include.
winecfg: Fix potential null pointer access (spotted by Yaroslav Skorokhodov).
winex11.drv: Glyph width is rounded to 32 bits, make sure to provide enough null data.
comctl32: Remove useless pointer check.
wintrust/tests: Fix the WintrustGetRegPolicyFlags to work right the first time.
widl: Add typecasts for user marshalling routines to avoid compiler warnings.
localspl: Make some functions static.
server: Enable kqueue support on Mac OS >= 10.5 now that it's fixed.
ntdll: Implemented reading of the CDROM TOC on Mac OS.
user32/tests: Avoid strlen in trace.
Anatoly Lyutin (2):
cmd.exe: Update Russian translation.
user32: tests:msg Add test for switching MDI children.
Andrew Talbot (7):
msi: Constify some variables.
oleaut32: Fix some typos.
wined3d: Void functions should not return a value.
msi: Constify a variable.
msi: Constify some variables.
msi: Constify some variables.
msrle32: Constify some variables.
Andrey Turkin (4):
pdh: Stub implementation of pdh.dll.
ntdll: Stub and document IoCompletion APIs.
kernel32: Factor out all kernel32 timeout-conversion snippets to one helper functions.
kernel32: Implement IO completion functions on top of the NT IoCompletion API.
Aric Stewart (1):
ole32: Implementation of state bits for IStorage.
Chris Robinson (3):
wined3d: Add a few missing checkGLcall calls.
quartz: Don't return S_FALSE for failed connections.
wined3d: Add missing table entry value.
Christian Costa (3):
wineoss.drv: Mark every buffer being added.
winealsa.drv: Use correct tests for synthesizer/port enumeration order.
winealsa.drv: Fix compilation with old alsa headers.
Damjan Jovanovic (1):
ws2_32: getsockname should fail on unbound socket.
Dan Hipschman (14):
list.h: Add macros for reverse iteration.
widl: Replace get_name with a field reference.
widl: Represent arrays with type_t.
widl: Implement conformant structure handling.
widl: Check for NULL in set_tfswrite.
widl: Fix incomplete struct/union typedef bug.
widl: Simplify correlation descriptor code.
widl: Handle wire_marshal types.
widl: Test structure argument marshalling.
widl: Handle wire_marshal pointer attributes.
widl: Handle embedded interface pointers.
widl: Handle encapsulated unions.
widl: Factor the output functions.
widl: Fix a write_parameters_init bug.
Detlef Riekenberg (4):
include/winspool: Add more flags for printer drivers.
winspool: Implement AddPortEx.
winspool: Remove outdated comment.
localspl: Implement AddPortEx.
Dmitry Timoshkov (4):
include/msvcrt: Make sure that __int64 is properly defined on a 64-bit platform.
user32: Do not hardcode cp1252 for an icon/title font.
gdi32: Make BITMAPINFOHEADER biSize check match what other parts of code do.
msi: Simplify the code.
Evan Stade (9):
gdiplus: Added public headers.
gdiplus: Added beginnings of memory and startup functions.
gdiplus: First pen implementation.
gdiplus: First pen test.
gdiplus: Added first GDI+ graphics implementation.
gdiplus: Implemented GdipDrawLineI.
gdiplus: Implemented GdipDrawRectangleI.
gdiplus: Brush implementation.
gdiplus: Brush tests.
Francois Gouget (28):
ws2_32: Improve the prototypes Win64 compatibility by replacing long with LONG.
winspool.drv: Fix the AddPortExA/W() export to match the implementation.
programs/cmd: Add missing '\n' to Wine trace.
wined3d: Fix spelling of the state_separateblend() function.
Assorted spelling fixes.
ntdll: Improve the prototypes Win64 compatibility by replacing long with LONG.
winapi_check: Also warn about 'unsigned long's Win64 compatibility problems.
advapi32: Update win32.api to fix the winapi_check warnings.
wined3d: Pass the D3DCB_CreateAdditionalSwapChain() error code to the upper layers (needed for d3d9).
gdiplus: Add missing '\n' in Wine trace.
winapi_check: .exe and .ocx files can also export APIs.
hhctrl.ocx: winapi_check expects the module name to be all uppercase in the documentation.
msdmo: dmoreg.h should include mediaobj.h.
msdmo: Improve the prototypes Win64 compatibility by replacing long with LONG.
secur32: Update win32.api to fix the winapi_check warnings.
Add API documentation stubs to make winapi_check happy.
wintrust/tests: Simplify the code and improve consistency by removing unneeded function typedefs.
wintrust/tests: Fix checks to be more informative when they fail.
gdiplus: Add missing '\n' to ok() calls, Wine traces.
regedit: Move PerformRegAction() and get_file_name() around to eliminate forward references. Make them static.
crypt32: Add missing '\n' to ok() call.
regedit: Remove setAppName() as the application name is hardcoded anyway.
regedit: Remove cruft and make functions static, reordering where necessary to avoid forward declarations.
regedit: If the data for a given value is in an unknown format, then print an error and don't modify the value.
regedit: Make the dword and binary data parsing both more flexible and stricter.
regedit: The registry functions return standard error codes, not HRESULTs.
regedit: Having garbage after the dash in '"foo"=-' is not valid.
regedit: Modify getRegClass() to avoid dubious comparisons and casts between HKEYs and error codes.
Glenn Wurster (1):
sfc_os: Add stub implementation for SfcIsKeyProtected.
H. Verbeet (15):
wined3d: Return WINED3DERR_INVALIDCALL in DrawIndexedPrimitive if no index buffer is set.
d3d9: Add a test for calling DrawIndexedPrimitive with a NULL index buffer.
wined3d: TRACE the Color parameter in IWineD3DDeviceImpl_Clear.
wined3d: Rename IWineD3DDeviceImpl_SetBasevertexIndex to IWineD3DDeviceImpl_SetBaseVertexIndex.
wined3d: Make sure the color buffer is not modified by depth_blt().
wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead.
wined3d: Add IWineD3DDevice_GetBaseVertexIndex to retrieve the base vertex index.
wined3d: Get rid of the pBaseVertexIndex parameter to IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead.
wined3d: Turn off filtering for FBO attachments, update the texture's states array.
wined3d: Fix GLSL definitions.
wined3d: Pass NULL for the stateBlock parameter to shader_get_registers_used() in IWineD3DVertexShaderImpl_SetFunction.
wined3d: For ps_2_0 and higher, call shader_get_registers_used() in IWineD3DPixelShaderImpl_SetFunction.
wined3d: Take the texUnitMap into account when loading shader_glsl_load_psamplers().
wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap() when activating the context.
wined3d: Add wined3d vertex sampler definitions.
Hans Leidekker (3):
mlang: Implement IMultiLanguage::GetLcidFromRfc1766.
wininet: More lenient parsing of the passive mode server response.
gdi32: Add some tests for BITMAPINFOHEADER biSize checks.
Huw Davies (4):
mshtml: Don't release the factory if we failed to get it.
oleaut32: Fixes for the PICTYPE_UNINITIALIZED case.
riched20: Don't mess with the caret if we don't have focus.
winex11.drv: XRenderCompositeText has a problem with 0x0 glyphs, so we'll pretend they're 1x1.
Hwang YunSong(황윤성) (2):
credui: New Korean resource.
shell32: Updated Korean resource.
Jacek Caban (58):
urlmon: Don't pass query part of URL to CreateUrlCacheEntryW.
mshtml: Added support for coexisting different Gecko versions installation.
mshtml: Switch to Wine Gecko 0.1.0.
mshtml: Fix debug trace.
mshtml: Added command table for CGID_MSHTML commands.
mshtml: Move IDM_FONTSIZE, IDM_FONTNAME and IDM_FORECOLOR to edit state command table.
mshtml: Move more commands to command table.
mshtml: Move more commands to editor command table.
mshtml: Move remaining commands to tables.
mshtml: Use command table for IDM_COPY, IDM_CUT and IDM_PASTE query.
mshtml: Move justify queries to command table.
mshtml: Move edit command queries to the command table.
mshtml: Move remaining status queries to command tables.
mshtml: Make [get|set]_font_size static.
mshtml: Move setup_ns_editing to nsembed.c.
mshtml: Forward all IsDirty implementations to one function.
mshtml: Don't crash in load_stream if Gecko is not available.
mshtml: Don't do anything in exec_editmode if edit mode is already set.
mshtml: Use IOleCommandTarget::Exec to implement context menu.
mshtml: Call UpdateUI and Exec(OLECMDID_UPDATECOMMANDS) from timer callback.
mshtml: Move Exec(OLECMDID_SETTITLE) call to separated function and use it in on_timer.
mshtml: Call update_doc in exec_editmode.
mshtml: Added test of callbacks called from document timer.
mshtml: Pump messages of all windows in test_download.
mshtml: Improve IDM_JUSTIFYLEFT query status.
mshtml: Push TASK_PARSECOMPLETE in load event if Gecko is available.
mshtml: Set FALSE useCapture for editor's keypress event listener.
mshtml: Don't check out variant type in exec_fontname.
mshtml: Set default fontname to 'Times New Roman'.
mshtml: Added Exec(IDM_FONTNAME) tests.
mshtml: Added more command tests.
mshtml: Call update_doc in editor commands.
mshtml: Call update_doc in init_editor.
mshtml: Store editor controller in NSContainer.
mshtml: Added editor mode up key implementation.
mshtml: Added editor mode down key implementation.
mshtml: Reimplement editor mode right key using command controller.
mshtml: Reimplement editor mode left key using command controller.
mshtml: Set default scrollbar preferences.
mshtml: Added IDM_RESPECTVISIBILITY_INDESIGN command stub implementation.
mshtml: Silence invalid FIXME for ELEMENT_DOCUMENT_FRAGMENT_NODE in nsnode_to_nsstring_rec.
mshtml: Added COMMENT_NODE implementation in nsnode_to_nsstring_rec.
mshtml: Added IHTMLStyle::get_fontFamily implementation.
mshtml: Added IDM_COMPOSESETTINGS implementation.
mshtml: Added semi stub IsDirty implementation.
mshtml: Added IsDirty tests.
mshtml: Added edit mode IDM_COPY implementation.
mshtml: Added edit mode IDM_PASTE implementation.
mshtml: Added edit mode IDM_CUT implementation.
mshtml: Call Exec(CGID_ShellDocView, 37) in exec_editmode.
mshtml: Move createing URL moniker to separated function.
mshtml: Move Exec(CGID_ShellDocView, 37) call to match native.
mshtml: Store current moniker in HTMLDocument.
mshtml: Added GetCurMoniker implementation.
mshtml: Don't crash in set_font_size if range_cnt is 0.
mshtml: Added get_URL implementation.
mshtml: Use IOleInPlaceSiteEx if available.
mshtml: Added IOleInPlaceSiteEx tests.
James Hawkins (8):
msi: Use fetch_int to reduce code duplication and access to table data.
msi: Reduce the amount of code that directly accesses table data.
msi: Represent table data as bytes instead of shorts.
msi: Add support for large string tables.
msi: Set the MsiNetAssemblySupport property.
msi: Protect custom actions with a structured exception handler.
msi: Fixed the WriteEnvironmentStrings action.
msi: Set the UserSID and ProductCode properties for deferred custom actions.
Jason Edmeades (10):
cmd.exe: Move English constants into NLS files.
cmd.exe: Move writing to console into a single function.
cmd.exe: Handle command line as Unicode.
cmd.exe: Convert cmd to Unicode.
cmd.exe: Fix 'help garbage' command post-unicode support.
cmd.exe: Fix handling of malformed environment variable expansion.
cmd.exe: Change from main to wmain.
cmd.exe: Fix dir /w.
xcopy.exe: Convert from main to wmain.
cmd.exe: Add support for cmd.exe /u (Unicode from internal pgms).
Jeff Latimer (2):
shell32: Fix possible dereference of NULL ptr.
msi: Use the langbuff len rather than the versionbuff len when allocating the langbuff.
John Klehm (1):
include: Allow port.h to build on gcc4.
Juan Lang (10):
comdlg32: Initialize file dialog controls before creating dialog.
comdlg32: Check file dialog's FOIShellView before accessing it.
crypt32: Add CryptMsg* stubs.
crypt32: Implement CERT_AUTHORITY_KEY_ID2_INFO encoding/decoding.
crypt32: Implement PKCS_CONTENT_INFO encoding/decoding.
crypt32: Separate set encoding into a separate function.
crypt32: Implement PKCS_ATTRIBUTE encoding/decoding.
crypt32: Use CRYPT_EncodeEnsureSpace to allocate memory when necessary.
crypt32: Implement PKCS_ATTRIBUTES encoding/decoding.
crypt32: Implement PKCS7_SIGNER_INFO encoding/decoding.
Kai Blin (1):
ws2_32: Add mapping for STATUS_OBJECT_TYPE_MISMATCH to WSAENOTSOCK.
Kolbjørn Fredheim (1):
winex11.drv: Echo the video mode requested in the error message when not finding a matching mode.
Lei Zhang (7):
wined3d: Various spelling fixes.
include: Add missing definitions to shlobj.h.
shell32: Start implementing BIF_USENEWUI.
user32: Improve cut/copy/paste behavior of password edit boxes.
comdlg32: Move file dialog resizing code into its own function.
user32: Remove a unused variable from ES_PASSWORD test.
comctl32: Make modal property sheets modal.
Louis Lenders (1):
shell32: Add stub for SHUpdateRecycleBinIcon.
Maarten Lankhorst (8):
dsound: Fix buffer caps.
dsound: Recalculate 3d buffer on SetVolume.
dsound: Disable property sets if hardware doesn't support it.
winmm: Use unix fd's instead of win32 events to sync internal events in timer.
dsound: Unset variable on failure in IKsBufferPropertySetImpl_Create.
rsaenh: Allow CRYPT_NEWKEYSET and CRYPT_VERIFYCONTEXT at same time when acquiring context.
winealsa: Detach directsound implementation from waveout implementation.
dsound: Use TIME_KILL_SYNCHRONOUS on sound timer.
Marcus Meissner (1):
quartz: Added some error checking on failure to CreateClassEnumerator.
Markus Goemmel (1):
comctl32/listview.c: Ownerdraw font problem during focus change fixed.
Michael Stefaniuc (8):
wingdi.h: Multi-character character constants are implementation specific according to the C standard. Use a hex number instead.
capi2032: Fix non-ANSI function declaration. Found by sparse.
gphoto2.ds: Fix non-ANSI function declaration. Found by sparse.
wrc: Fix non-ANSI function declaration. Found by sparse.
winedos: Fix printf format warnings introduced by the TEB change in thread.h.
psapi: GetPerformanceInfo() calls down to the wrong ntdll function. Found by sparse.
psapi: GetWsChanges() calls down to the wrong ntdll function. Found by sparse.
wrc: Fix redundant checks for NULL before free(). Found by Smatch.
Mikołaj Zalewski (2):
kernel: Fix clearing of memory in LocalReAlloc16(..., LMEM_ZEROMEMORY).
comctl32: listview: Make LVM_GETCOLUMNWIDTH query the header control instead of using cached data.
Misha Koshelev (29):
msi: automation: Remove duplicate error messages on unknown dispid.
msi: automation: Add missing operand for evaluation.
msi: msiserver.idl: Maintain spacing as spaces, not tabs.
msi: automation: Remove redundant VariantClear(pVarResult).
msi: automation: Database::SummaryInformation is a propget, not a method.
msi/tests: automation: Add tests for SummaryInfo::Property, get.
msi: automation: Fix SummaryInfo::Property get to conform to native.
msi/tests: suminfo: Add tests for MsiSummaryInfoGetProperty for unknown property values.
msi: suminfo: Return ERROR_UNKNOWN_PROPERTY as native.
msi: automation: SummaryInfo::Property, remove all specific instances to PIDs.
msi/tests: automation: Add test for Installer::OpenDatabase.
msi: automation: Add MsiOpenDatabaseMode enum.
msi/tests: automation: Add tests for SummaryInfo::Property, put.
msi: automation: Implement SummaryInfo::Property, put.
msi/tests: automation: Add tests for SummaryInfo::PropertyCount.
msi: automation: Implement SummaryInfo::PropertyCount.
widl: Add support for vararg attribute.
oleaut32/tests: Add tests for IDispatch::Invoke of vararg function.
oleaut32: Add support for vararg functions in ITypeInfo::Invoke.
winebrowser: Add DDE support.
wine.inf: Use DDE for winebrowser as native.
shell32/tests: Simplify DDE thread and message loop.
shell32/tests: Save threadid from CreateThread as required by winme/98/95.
shell32/tests: Use ShellExecuteEx with SEE_MASK_FLAG_DDEWAIT and SEE_MASK_FLAG_NO_UI for DDE tests.
shell32/tests: Expand default DDE application name tests to conform to win98.
shell32/tests: Allow testing for arbitrary number of command line arguments in DDE tests.
shell32/tests: Add test for unquoted %1 in command and ddeexec keys.
setupapi/tests: Add basic tests for InstallHinfSectionA/W command line processing.
setupapi: Handle unquoted paths in InstallHinfSection as native.
Nigel Liang (1):
shell32: Conformance tests for unicode filenames and fix a bug for file deletion.
Paul Vriens (6):
wintrust/tests: Start of some crypt tests for wintrust.
wintrust/tests: Use A instead of W-calls.
comdlg32/tests: Skip some not implemented functions on win98.
crypt32/tests: Skip tests if we don't have enough rights.
crypt32/tests: Skip tests if we don't have enough rights.
crypt32/tests: Vista uses a different error code.
Phil Costin (6):
wined3d: Add GL_EXT_texture_sRGB constants and corresponding CheckDeviceFormat query.
wined3d: Extend the D3DFMT table to include gamma corrected formats.
wined3d: Add support for loading gamma corrected textures.
wined3d: Enable the loading and reloading of gamma corrected textures.
wined3d: Add gamma linerization support for D3DFMT_A4R4G4B4.
wined3d: Remove a duplication in device.c.
Ralf Beck (1):
winealsa.drv: Mark every sysex buffer being added.
Rob Shearman (6):
wininet: Send the correct callbacks during InternetReadFileExA calls.
wininet: Implement NTLM support for proxy authentication.
uuid: Add hlink CLSIDs.
mshtml: Add some error handling to hlink_frame_navigate.
mshtml: Use the implementation of IHlink in hlink.dll instead of duplicating it.
include: Add HTMLTextContainerEvents dispinterface and necessary dispids.
Stefan Dösinger (31):
wined3d: Do not enable GL_APPLE_client_storage for the dummy textures.
ddraw: Hold the lock in IDirect3DDevice methods.
ddraw: Hold the lock in IDirectDrawClipper methods.
ddraw: Hold the lock in IDirectDrawGammaControl methods.
ddraw: Hold the lock in IDirect3DMaterial methods.
ddraw: Hold the lock in IDirectDrawPalette methods.
ddraw: Hold the lock in IDirect3DLight methods.
ddraw: Hold the lock in IDirect3DTexture methods.
ddraw: Hold the lock in IDirect3DVertexBuffer methods.
ddraw: Hold the Lock in IDirect3DViewport methods.
d3d8: Add a dll global critical section.
d3d8: Hold the DLL lock in IDirect3D8 methods.
wined3d: Store the gl information in a per adapter structure and initialize it only once.
wined3d: Store the adapter driver and description in the adapter.
wined3d: Find possible fbconfis on dll load time, use them in CheckDepthStencilMatch.
d3d8: Hold the lock in IDirect3DDevice8 methods.
wined3d: Some render target->texture blit context handling.
wined3d: Do not set the dynlock flag on all created surfaces.
d3d8: Hold the lock in cubetexture methods.
d3d8: Hold the lock in IDirect3DIndexBuffer8 methods.
d3d8: Hold the lock in IDirect3DSurface8 methods.
d3d8: Hold the lock in swapchain methods.
d3d8: Hold the lock in IDirect3DVertexBuffer methods.
d3d8: Hold the lock in volume methods.
d3d8: Hold the lock in IDirect3DVolumeTexture8 methods.
d3d8: Hold the lock in IDirect3Dtexture8 methods.
wined3d: Only swap system memory resources of front and back buffer if they have the same size.
wined3d: Implement vertical refresh sync.
wined3d: Present does not clear the depth stencil.
wined3d: DDraw surfaces are QWORD aligned.
d3d9: Add a dll global critical section.
Stefan Leichter (3):
crypt32: Replace CRYPT_RecurseDeleteKey with RegDeleteTreeW.
qcap: Replace DeleteEntireSubKey with RegDeleteTreeW.
winspool.drv: Replace WINSPOOL_SHDeleteKeyW with RegDeleteTreeW.
Ulrich Czekalla (2):
ole32: Remove stack-based string buffer inFileMonikerImpl_DecomposePath.
opengl: Use get_glxdrawable to grab the drawable.
Vedran Rodic (1):
winmm: Fix PlaySound so it doesn't block when another sound is already playing.
Vitaliy Margolen (3):
dinput: Make sure to unacquire device before freeing it.
dinput: Acquire device only if specified window has focus in foreground coop level.
atl: Use CallWindowProc instead of calling old window proc directly.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.38 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Beginnings of support for copy protection kernel drivers.
- More MSI automation support.
- Many 64-bit compilation fixes.
- A number of OLE fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.38.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.38.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.37:
Alexander Nicolaysen Sørnes (8):
wordpad: Add program icon.
shell32: Update Norwegian Bokmål resources.
msi: Update Norwegian Bokmål resources.
regedit: Update Norwegian Bokmål resources.
credui: Add Norwegian Bokmål resources.
localui: Add Norwegian Bokmål resources.
shdoclc: Update Norwegian Bokmål resources.
cmd: Update Norwegian Bokmål resources.
Alexandre Julliard (41):
ntoskrnl.exe: Initial stub version with forwards to existing functions.
hal: Added an initial stub.
include: Add a few definitions in wdm.h.
ntoskrnl.exe: Implemented IoCreateDevice and IoDeleteDevice.
ntoskrnl.exe: Implemented IoCreateSymbolicLink.
ntoskrnl.exe: Export KeServiceDescriptorTable and KeTickCount.
ntoskrnl.exe: Added IofCompleteRequest.
ntdll: Reimplement LdrGetDllHandle to use the same search algorithm as LdrLoadDll.
ntdll: Implemented LdrAddRefDll.
kernel32: Support incrementing the module refcount in GetModuleHandleEx.
kernel32: Check for already loaded module also for LOAD_LIBRARY_AS_DATAFILE.
ntoskrnl.exe: Implemented a number of memory allocation functions.
ntoskrnl.exe: Export a Wine-internal function to run the device request handling loop.
ntoskrnl.exe: Implemented PsGetVersion and added stubs for a couple of other Ps functions.
winedevice: Add a service process that loads and runs a kernel driver.
advapi32: Launch winedevice.exe when asked to start a kernel driver service.
ntoskrnl.exe: Reuse the kernel32 instruction emulation support for kernel-mode drivers.
ntoskrnl.exe: Implemented a couple of time-related APIs.
ntdll: Setup the shared user data structure at 0x7ffe0000.
ntdll: Avoid overflows in heap allocations. Based on a patch by Rob Shearman.
Fix a couple of overflowing heap allocations revealed by the previous change.
server: Don't allow a waitable timer to be set to expire in the past.
winebuild: Set the IMAGE_FILE_EXECUTABLE_IMAGE flag for all modules.
msxml3: Fixed compilation without libxml.
schannel: Use FIELD_OFFSET instead of offsetof.
wininet: Fixed compilation without SSL.
libwine: Add support for glyph chars mapping in OEM codepage tables.
kernel32: Remove the fixme about MB_USEGLYPHCHARS.
dmusic: Fix license headers that mistakenly use GPL instead of LGPL.
winedos: Merge a number of tiny source files into interrupts.c.
kernel32: Store global arena base as a pointer.
ws2_32: Avoid memory allocations for sockaddr conversion.
ws2_32: Reimplement WSARecvFrom along the lines of NtReadFile.
ws2_32: Store the local iosb in the ws2_async structure to avoid a memory allocation.
include: Fix the definition of MSG_MAXIOVLEN.
ws2_32: Allocate iovec buffers statically using MSG_MAXIOVLEN.
ntdll: Report end of file instead of broken pipe on char devices.
ws2_32: Re-enable FD_READ also when returning EWOULDBLOCK from WSARecvFrom().
ws2_32: Don't modify last error in async I/O callback.
ntdll: Preserve errno across system calls done in the suspend handler.
user32: Fix a printf format warning.
Anatoly Lyutin (1):
user32: mdi: Fix switch with wParam in WM_SYSCOMMAND processing.
Andrew Riedi (1):
wined3d: Add hardware cursor support.
Andrew Talbot (45):
advapi32: Fix a typo.
msvcrt20: Exclude unused header.
msvfw32: Exclude unused header.
msvcrt: Exclude unused headers.
msxml3: Exclude unused headers.
ntdll: Exclude unused headers.
netapi32: Exclude unused headers.
ole32: Exclude unused headers.
oledlg: Exclude unused header.
oleaut32: Exclude unused headers.
opengl32: Exclude unused header.
quartz: Exclude unused headers.
quartz: Exclude unused headers.
qcap: Exclude unused headers.
rpcrt4: Exclude unused headers.
rsaenh: Exclude unused header.
riched20: Exclude unused headers.
secur32: Exclude unused headers.
setupapi: Exclude unused headers.
shell32: Exclude unused headers.
shell32: Exclude unused headers.
shell32: Exclude unused headers.
user32: Exclude unused headers.
user32: Exclude unused headers.
user32: Exclude unused headers.
user32: Exclude unused headers.
vmm.vxd: Exclude unused headers.
version: Exclude unused headers.
uxtheme: Exclude unused headers.
winealsa.drv: Exclude unused headers.
ws2_32: Exclude unused headers.
winmm: Exclude unused headers.
mciwave: Constify a variable.
mpr: Constify some variables.
msdmo: Constify some variables.
mscms: Constify some variables.
msg711.acm: Constify some variables.
wineps.drv: Exclude unused headers.
wininet: Exclude unused headers.
winex11.drv: Exclude unused headers.
msacm32: Constify some variables.
msacm32.drv: Constify some variables.
msadp32.acm: Constify some variables.
mshtml: Constify some variables.
msi: Constify some variables.
Aric Stewart (1):
comctl32: Trying to blend an image without a mask causes problem, especially if the background is white.
Damjan Jovanovic (2):
ws2_32: Simplify some socket tests by adding a function that generates a pair of connected sockets.
ws2_32: gethostbyname("") should work.
Dan Hipschman (11):
widl: Remove an unnecessary assignment in write_pointers.
widl: Handle pointers fields that point to structures.
widl: Improve handling of offsets in the type format string.
widl: Write some structures to the type format string on the fly.
widl: Replace erroneously removed current_func assignment.
widl: Lay framework for unions with simple unions working.
rpcrt4: Fix test typo.
widl: Handle pointers in unions.
widl: Shrink type_t structure.
widl: Allow types that reference themselves.
rpcrt4: Fix build of test on Solaris by renaming a variable.
David Adam (6):
d3drm: Implement D3DRMColorGetRed.
d3drm: Implement D3DRMColorGetGreen.
d3drm: Implement D3DRMColorGetBlue.
d3drm: Implement D3DRMColorGetAlpha.
d3drm: Implement D3DRMCreateColorRGBA.
d3drm: Implement D3DRMCreateColorRGB.
Detlef Riekenberg (5):
localui/tests: Add tests for ConfigurePortUI.
serialui/tests: Remove unused string.
localui/tests: Add tests for AddPortUI.
localui/tests: Handle different results from XP.
ddraw: Do not crash when Clipper is NULL.
Dmitry Timoshkov (38):
user32: Add a test for CheckMenuRadioItem and make it pass under Wine.
user32: Add a test for the menu resource loader, make it pass under Wine.
kernel32: Add a test for LoadLibraryEx(LOAD_LIBRARY_AS_DATAFILE).
user32: Remove duplicated code.
kernel32: Print last error value as unsigned, printing error in hex is useless.
kernel32: Add an overflow test for MultiByteToWideChar.
widl: Fix compilation warnings in 64-bit mode.
winebuild: Fix compilation warnings in 64-bit mode.
winedump: Fix compilation warnings in 64-bit mode.
include/wine/debug.h: Fix compilation warning in 64-bit mode.
winex11.drv: Synchronize debug output between X11DRV_KeyEvent and X11DRV_ToUnicodeEx.
basetsd.h: Add a bunch of PSDK compatible macros/inline functions for 64-bit safe type conversions.
kernel32: Fix the size of ThreadAffinityMask to match PSDK.
basetsd.h: Fix a typo in the parameter name.
winternl.h: Make the fields of the PROCESS_BASIC_INFORMATION structure use same type width as a PSDK one.
widl: Fix compilation warnings in 64-bit mode.
ntdll: Fix compilation warnings in 64-bit mode.
kernel32: Fix compilation warnings in 64-bit mode.
comctl32/tests: Fix some problems revealed by compilation in 64-bit mode.
kernel32/tests: Fix a problem revealed by compilation in 64-bit mode.
user32/tests: Fix a problem revealed by compilation in 64-bit mode.
winedbg: Fix a problem revealed by compilation in 64-bit mode.
wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility.
gdi32: Perform consistency checks when loading an EMF, add a test case.
oleaut32: Add support for loading and drawing metafiles.
winebuild: Mark builtin DLLs as IMAGE_FILE_LARGE_ADDRESS_AWARE on a 64-bit platform.
gdi32: Make SetDCHook 64-bit safe.
gdi32: Fix compilation warnings in 64-bit mode.
winex11.drv: Fix compilation warnings in 64-bit mode.
kernel32: Fix some compilation warnings in 64-bit mode.
user32: Fix some compilation warnings in 64-bit mode.
atl: Fix compilation warnings in 64-bit mode.
mcicda: Fix compilation warnings in 64-bit mode.
mciseq: Fix compilation warnings in 64-bit mode.
mciwave: Fix compilation warnings in 64-bit mode.
midimap: Fix compilation warnings in 64-bit mode.
mciavi32: Fix compilation warnings in 64-bit mode.
comctl32: Fix a compilation warning in 64-bit mode.
Emmanuel Maillard (7):
winecoreaudio: Initial mixer support on Mac OS X.
winecoreaudio: Implement MIX_Open and MIX_GetNumDevs.
winecoreaudio: Implement MIX_GetDevCaps.
winecoreaudio: Initial implementation of MIX_GetLineInfo.
winecoreaudio: Initial implementation of MIX_GetLineControls.
winecoreaudio: Initial implementation of MIX_GetControlDetails.
winecoreaudio: Initial implementation of MIX_SetControlDetails.
Erez Volk (1):
ntdll: Added IDT Timezone (Israel daylight savings time).
Evan Stade (1):
gdiplus: Added stub implementation of gdiplus.dll.
Francois Gouget (49):
ddraw/tests: Fix compilation on systems that don't support nameless unions.
winscard: Adding the missing SCARD_E_XXX and SCARD_W_XXX error codes.
winscard: Add headers for the upcoming implementation of the winscard dll.
mshtml: Fix '\n' typo.
Assorted spelling fixes.
ntdll: Fix compilation on systems that don't support nameless unions.
direct3d: Remove misspelled constants as they exist correctly spelled.
user32/tests: Fix compilation with gcc 2.95.
msvcrt/tests: When compiling with Visual C++ 2005, one must define _CRT_NON_CONFORMING_SWPRINTFS otherwise swprintf() takes an extra parameter.
msvcrt: Remove the S_ISXXX() macros as they are not present in the Visual C++ headers.
msvcrt: When operating on a closed pipe, read() should return 0, not -1.
port.h: Issue an error if port.h is included after the regular Wine headers.
usp10/tests: Fix a signed/unsigned int mismatch.
kernel32/tests: Fix a signed/unsigned int mismatch.
msi/tests: Fix a signed/unsigned int mismatch.
msvcrt/tests: Fix a signed/unsigned int mismatch.
user32/tests: SWP_STATECHANGED is an undocumented flag so define it ourselves. Fixes compilation with the PSDK.
shell32/tests: We need NTDDI_VERSION >= NTDDI_WINXPSP1 to get SEE_MASK_NOZONECHECKS with the PSDK.
d3d9/tests: Fix compilation with Visual C++ 2005.
kernel32/tests: src[i] is a char so there is no point trying to stuff 0xcafedead into it.
comctl32/tests: The PSDK does not define ListView_InsertItemA() so don't use it.
ddraw: Fix the name of DDSPD_IUNKNOWNPOINTER.
In the PSDK HRESULT_FROM_WIN32() is now an inline function, and it is __HRESULT_FROM_WIN32() which is a macro.
shell32/tests: With recent PSDKs, CSIDL_MYDOCUMENTS is a synonym for CSIDL_PERSONAL. So define our own constant.
shlwapi/tests: The PSDK does not define IID_IDelayedRelease anymore.
include: The PSDK does not define the DEFINE_SHLGUID() macro anymore.
schannel: The PSDK defines no SECPKG_FUNCTION_TABLE_SIZE_* macro.
schannel: Fix the name of the SetContextAttributes field of SECPKG_FUNCTION_TABLE.
ddraw/tests: Fix compilation with Visual C++ 2005.
rpcrt4/tests: Fix signed/unsigned and 32/64bit issues with the wiredatalen parameter.
rpcrt4/tests: Fix a Visual C++ double to float conversion warning.
setupapi/tests: There is no strncasecmp() on Windows. So use CompareString() instead.
ntdll/tests: Remove an inappropriate const qualifier.
gdi32/tests: Fix a signed/unsigned int mismatch.
psapi/tests: Fix a signed/unsigned int mismatch.
d3d8/tests: Fix the Visual C++ double to float conversion warnings.
d3d9/tests: Fix the Visual C++ double to float conversion warnings.
ddraw/tests: Fix the Visual C++ double to float conversion warnings.
dsound/tests: Fix the Visual C++ double to float conversion warnings.
oleaut32/tests: Fix the Visual C++ double to float conversion warnings.
Assorted spelling fixes.
oleaut32/tests: Remove redundant semi-colons.
oleaut32/tests: Remove unneeded parentheses.
oleaut32/tests: Fix the EQ_DOUBLE() and EQ_FLOAT() macros so they work no matter how large the values to compare are.
oleaut32/tests: Convert some macros to functions.
version: Fix the VerQueryValueA/W() prototypes.
d3drm/tests: Fix the Visual C++ double to float conversion warnings.
shell32/tests: Remove unneeded cast.
oleaut32/tests: Improve vtstr() and variantstr().
Frank Richter (5):
shdoclc: Update German translation.
credui: Add German translation.
shell32: Update German resources.
cmd: Updated German translation.
wordpad: Update German translation.
Hans Leidekker (4):
setupapi: Implement pSetup{Get, Set}QueueFlags.
setupapi: Correctly handle an empty filename in SetupGetSourceFileLocationA.
setupapi: Add a partial implementation for SetupScanFileQueue{A, W}.
setupapi: Don't require a valid version section for INF_STYLE_OLDNT files.
Huw Davies (14):
oleaut32: Type references are global to the typelib.
oleaut32: Typelib inheritance tests.
oleaut32: Fix return value in the element not found case.
oleaut32: GetRefTypeOfImplType(0) on TKIND_DISPATCH typeinfos should always return an href to IDispatch.
oleaut32: Tests for more 'syntax 2' dispinterfaces.
oleaut32: Test for interface that derives from IUnknown.
oleaut32: Move the proxy thunk creation code to a separate function.
oleaut32: non-dual dispinterfaces should be marshaled via IDispatch.
oleaut32: Fix CreateDispTypeInfo to store the correct number of functions.
oleaut32: Recurse through the impltype list so that dispinterfaces get the correct parents.
oleaut32: SLTG references are only unique at the typeinfo level, so convert them to be unique to the typelib.
winex11.drv: Merge some common code.
winex11.drv: Use XRenderCompositeText instead of XRenderCompositeString.
gdi32: Pass an lpDx array to the driver if the escapement is non-zero, so that the driver has access to the unrotated advance widths.
Hwang YunSong(황윤성) (1):
xcopy: New Korean resource.
Jacek Caban (6):
mshtml: Wrap nsIExternalProtocolHandler.
mshtml: Don't call start_binding if we use necko to load the page.
mshtml: Improve some exec command stubs.
mshtml: Fixed AsyncOpen implementation for channels without associated document.
mshtml: Added missing WINAPI in window proc.
urlmon: There is no need to make slash conversion in BindToStorage as URL is already canonized in the constructor.
James Hawkins (15):
msi: Remove a misleading ERR, as this fails if a file doesn't exist, which is common.
msi: Add the ability to deformat the component's source.
msxml3: Add initial implementation of IXMLElement and IXMLElementCollection.
msxml3: Add initial implementation of IXMLDocument.
msxml3: Add tests for IXMLElement and IXMLElementCollection.
msxml3: Add tests for IXMLDocument.
msi: Create the destination directory if it doesn't exist when duplicating files.
msi: Fall back to checking if the cab exists if the volume name doesn't match.
msi: Set the MsiNTProductType property.
msi: Perform a forced reboot if a custom action returns ERROR_INSTALL_SUSPEND.
msi: Implement the WriteEnvironmentStrings standard action.
wintrust: Add stub implementations for CryptCATAdminAddCatalog and CryptCATAdminReleaseCatalogContext.
msi: Add handling for MsiBreak.
msi: Implement Installer::OpenDatabase.
msi: Implement SummaryInfo::Property get.
Jeff Latimer (2):
hnetcfg: Define icftypes.idl.
hnetcfg: Add netfw.idl - Network Firewall interface.
Jeremy White (1):
wininet: Mark Proxy Authorization header as a request header, so it actually gets sent.
José Manuel Ferrer Ortiz (2):
winecfg: Updated Spanish translation.
Some Spanish translations updated.
Juan Lang (9):
crypt32: Don't set ret to TRUE when it already is.
crypt32: Implement CertGetStoreProperty and CertSetStoreProperty.
crypt32: Use public functions to get store access state.
crypt32: Remove last error checks on success.
wintrust: Implement WintrustGetRegPolicyFlags and WintrustSetRegPolicyFlags.
oleaut32: Don't mix allocation routines.
crypt32: Statically initialize static lists and critical sections.
crypt32: Remove wrong test and parameter check.
wincrypt: Fix typo.
Julien Muchembled (1):
msvfw32: Fix enumeration of VFW video codecs that are registered in the registry.
Kai Blin (2):
secur32: Downgrade WARN to TRACE, fix another TRACE.
ws2_32: Make WS2_send trace more readble.
Kolbjoern Fredheim (1):
wined3d: Implemented converting X1R5G5B5 format to R5G5B5A1 to emulate color-keying.
Louis Lenders (2):
shell32: Update Dutch resource.
comctl32: Add stub for DrawShadowText.
Maarten Lankhorst (6):
winealsa: Remove dead code.
dsound: Primary buffer isn't an IDirectSoundBuffer8.
dsound: IDirectSound_Compact should return DS_OK on priolevel >= DSSCL_PRIORITY.
mpr: Small fixes to WNetGetConnection.
dsound: Block align SetCurrentPosition and add test for it.
dsound: Fix stupid mistake.
Marcus Meissner (7):
wined3d: Fixed swapchain context NULL ptr checks.
ddraw/tests: Check for failing to create surfaces.
shell32: Avoid potential 1 byte overflow.
kernel32: Skip modem status tests if GetModemStatus failed.
oleau32: Fix one entry overflow (Coverity).
ntdll: Initialize pointers to NULL (Coverity).
quartz: ppinsplitter might be used uninitialized (Coverity).
Markus Amsler (4):
dbghelp: Speed up vector_add by avoiding pool_realloc calls. Remove no longer needed pool_realloc.
dbghelp: Speed up pool_alloc. Patch by Eric Pouech.
dbghelp: Speed up vector iteration by directly using for().
dbghelp: Late init hash_table.
Michael Karcher (1):
user32: Reduce the PeekMessage timeout to zero for USER16_AlertableWait.
Michael Stefaniuc (3):
winhelp: Fix some comparisons between signed and unsigned.
winedump: '$' isn't a valid character in an identifier regardless that gcc accepts it without warning.
msi: A signed 1-bit bitfield doesn't make much sense; use unsigned.
Mikołaj Zalewski (10):
localui: Add Polish translation.
msxml3: Implement IXMLDOMDocument2::setProperty("SelectionLanguage", ...).
comctl32: status: Send a NMMOUSE in mouse notifications, not a NMHDR.
comctl32: toolbar: TB_SETIMAGELIST should try to preserve button width.
msxml3: Improve the XPath queries handling.
msxml3: For queries the get_item should change the current position.
msxml3: Add tests for XPath queries with namespaces.
msxml3: Implement IXMLDOMElement::getElementsByTagName.
xcopy: Add Polish translation.
kernel32: Clear the extra memory in LocalReAlloc16(h, bigger_size, LMEM_ZEROINIT).
Misha Koshelev (44):
msi/tests: automation: Add tests for Session::EvaluateCondition.
msi: automation: Implement Session::EvaluateCondition.
msi/tests: automation: Test for Installer::CreateRecord error.
msi: automation: Implement Installer::CreateRecord.
msi/tests: automation: Test invoking methods as properties & vice versa.
msi: automation: Return DISP_E_MEMBERNOTFOUND if flags are incorrect.
msi: automation: Implement Record::FieldCount.
msi/tests: automation: Correct expected Record::StringData PROPERTYPUT return variant type.
msi/tests: automation: Add tests for Record::IntegerData.
msi/tests: automation: Add test for View::Modify.
msi: automation: Implement View::Modify.
msi: automation: Implement Record::IntegerData.
msi/tests: automation: Add test for Installer::InstallProduct.
msi: automation: Implement Installer::InstallProduct.
msi/tests: automation: Add tests for Installer::RelatedProducts.
msi: automation: Implement Installer::RelatedProducts.
msi: Make MsiEnumRelatedProducts enumerate registry value names, not subkeys.
msi: automation: Installer::Products, verify HeapAlloc return value.
msi: automation: Simplify counting products/related products.
msi: automation: Condense a few loops.
msi/tests: automation: Remove unnecessary if (SUCCEEDED(hr)) statements.
msi/tests: automation: Add tests for Installer::ProductInfo.
msi/tests: Add test for empty MsiGetProductInfo parameters not referencing default registry values.
msi: Return appropriate values for empty MsiProductInfo parameters.
msi: automation: Implement Installer::ProductInfo.
msi/tests: automation: Change non-const LPCWSTR parameters to LPWSTR.
msi/tests: automation: Check for NULL source string before calling lstrcpyW.
msi: automation: Change all tabs to spaces to conform to msi formatting.
msi: script: Change all tabs to spaces to conform to msi formatting.
msi/tests: automation: Change SUCCEEDED(hr) to more specific hr == S_OK.
msi/tests: automation: Fix Installer_ProductInfo ok message to correctly state function.
msi/tests: automation: Add tests for StringList::_NewEnum.
msi: automation: Generalize list implementation.
msi: automation: Implement StringList::_NewEnum.
msi/tests: automation: Installer::InstallProduct, remove a registry key set by Wine but not native.
msi/tests: automation: Test Installer::Products before and after InstallProduct, check product is not/is installed.
msi: Make MsiEnumProducts enumerate products, not features.
msi: automation: Append copyright notice.
shell32/tests: Add tests for ShellExecute DDE behavior.
shell32: Fix execute_from_key to conform to native behavior.
shell32/tests: Add tests for default DDE application name.
shell32: Handle default DDE application names.
shell32/tests: Remove duplicate code.
comctl32: imagelist: Fix simultaneous selection of one bitmap into two device contexts.
Mounir IDRASSI (6):
crypt32: Fix crash in CertGetCertificateContextProperty when querying length of a hash property.
crypt32: Stub implementation of CryptFindLocalizedName.
crypt32: Stub implementation of CertGetCertificateChain.
rsaenh: Fix crash in RSAENH_CPVerifySignature if pbSignature is set to NULL or if dwSigLen is lesser than the expected value.
crypt32: Fix CertAddCertificateContextToStore when called with CERT_STORE_ADD_USE_EXISTING.
winscard: Small initial stub implementation.
Nigel Liang (1):
shlwapi: Stub implementation for SHSetTimerQueueTimer.
Paul Vriens (2):
ole32/tests: Check for correct return value.
advpack/tests: Don't hardcode the system directory.
Peter Oberndorfer (4):
dbghelp: Minor cleanup.
ntdll: Fix up instruction pointer in context inside raise_exception.
winedbg: Show some info for msvcrt C++ exceptions.
winedbg: Only check for break/watch points on first chance exceptions.
Ralf Beck (2):
winealsa.drv: Add midi realtime and midi common messages on midi input.
winealsa.drv: Add missing offset of pitch bender in midi input.
Rob Shearman (43):
ole32: Fix CoUninitialize to only free libraries that return S_OK from DllCanUnloadNow.
ole32: Don't lookup the address for the DllGetClassObject function for ole32.dll in the apartment loaded dll list.
server: Add the logon SID to the default admin token's groups.
ole32: Create host apartments to enable isolation of objects of incompatible threading models.
ole32: Fix reading from an HGLOBALStreamImpl with an invalid HGLOBAL.
ole32: Fix hosting in main apartments.
wininet: Add support for SSPI authentication for HTTP.
wininet: Implement basic non-proxy authentication.
ole32: Handle MSHLFLAGS_TABLEWEAK and MSHLFLAGS_TABLESTRONG when marshaling a proxy.
ole32: Make proxy_manager_get_remunknown AddRef the return IRemUnknown object.
ole32: The identity functions can be used from apartments other than the one the proxy was unmarshaled into.
ole32: Remove a useless trace.
ole32: Add spec entry for CoRegisterSurrogateEx.
ole32: Fix some races in the global interface table implementation.
ole32: Add more tests for global interface table functions.
ole32: Allow the getting of different interfaces from the global interface table than that with what the object was registered with.
ole32: Remove spurious AddRef of returned object on retrieval of an interface from the global interface table.
hlink: Fix HlinkCreateFromString to create a URL moniker if the input target is a URL.
urlmon: Fix a typo in URLMonikerImpl_Save.
urlmon: The persisted version of URL monikers should be size of URL
shlwapi: Add a slash to the URL if there is no path component.
hlink: Improve the saving of hlinks by documenting the unknown header values and saving out more data.
hlink: Improve the loading of hlinks.
mlang: Implement ConvertINetString.
secur32: Fix the dwVersion field in the security function tables returned by InitSecurityInterfaceA/W.
secur32: Fix the wrapper InitializeSecurityContextA/W functions to handle phContext and phNewContext parameters being optional for some SSPs.
secur32: Make the NTLM SSP cope with a NULL phCredential parameter when InitializeSecurityContext is called more than once.
secur32: Don't set the output buffer type in NTLM's IntializeSecurityContextA/W.
secur32: Fix NTLM's InitializeSecurityContextA/W to be flexible with the index of the token buffer in both the input and output buffer descriptions.
setupapi: Add a FIXME in SetupCopyOEMInfW for when we should be copying a catalog file.
wininet: Pass context to InitializeSecurityContext in second parameter.
wininet: Fix basic authentication by putting Basic directing into the scheme field, as the pszAuthValue can have an optional realm string appended.
wininet: Cope with non-nul-terminated header strings being passed to HttpSendRequestW.
wininet: Don't close the connection if the caller passes in zero for the number of bytes to be read.
wininet: Add a new NETCON_query_data_available function.
server: Move most of the duplicate_token request to a new function, token_duplicate, to enable the code to be used inside wineserver.
server: When starting a new process, use the token from the calling process, if one exists.
oleaut32: For automatic-value-getting in ITypeInfo::Invoke, it doesn't matter what flag(s) the function was executed with, just what type of function is being invoked.
include: Fix a typo in wincred.h.
oleaut32: Fix the references in function descriptions returned for dual IDispatch interfaces.
widl: A structure with variance, but without conformance should be a complex struct instead of a conformant, varying struct.
widl: RPC_FC_BIND_PRIMITIVE is a base type so reverse an if statement
widl: Set current_structure when writing out structure members to
Robert Reif (1):
dsound: Add missing interface ID.
Rolf Kalbermatter (4):
advapi32: Add service state request definitions.
advapi32: Add access flags to service handle data.
advapi32: Fix return value to indicate error when NULL string is passed in.
advapi32: Return error on NULL service name to GetServiceDisplayNameA/W.
Stefan Dösinger (8):
ddraw: Make the ddraw list lock a global dll lock.
ddraw: Hold the lock in creation functions.
ddraw: Hold the dll lock in IDirectDraw methods.
ddraw: Hold the lock in IDirectDrawSurface methods.
ddraw: Check the validy of IDirectDrawSurface::BltFast parameters.
ddraw: Hold the lock in IDirect3DX methods.
wined3d: Don't mess with nv texture shaders if its not supported.
wined3d: Keep GL_TEXTURE_2D enabled when using dummy textures.
Stefan Leichter (1):
advapi32: Added implementation of RegDeleteTreeA/W.
Thomas Spear (1):
wine.inf: Add uninstall key.
Tim Schwartz (1):
net.exe: Add NET START command.
Vitaliy Margolen (4):
dinput: Prevent race between destroying the hook window and unloading the dll.
ntdll: Implement RtlWriteRegistryValue and forward ntoskrnl to it.
wine.inf: Create fake dll for iexplore.exe.
user32/test: Add few tests for messages sent from SetForegroundWindow().
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.37 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- MSI automation with JScript/VBScript support.
- Various MSHTML improvements.
- The usual assortment of Direct3D fixes.
- Support for a few more exe protection schemes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.37.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.37.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.36:
Alexandre Julliard (24):
winebrowser: Don't output debug traces by default.
server: Give system APCs priority over signaled objects.
kernel32: Don't skip directory symlinks when looking for a specific file.
widl: Don't declare a global binding handle when using an implicit handle.
server: Store valid file options in pseudo file descriptors.
server: Infrastructure to return a wait handle for blocking ioctls.
server: Allocate the wait event for FSCTL_PIPE_LISTEN on the server side.
server: Allocate the wait event for FSCTL_PIPE_WAIT on the server side.
Fix minor differences in the formatting of the license notices.
Get rid of some empty source files, our makefiles no longer require them.
configure: Only check for the static versions of libicu.
kernel32: Disable FT_Thunk entry point when Windows version is NT.
configure: Added rpath support for Solaris.
kernel32: Set the dll file name with the correct case to make EXECryptor happy.
configure: Fixed typo in libicu check.
ntdll: Support setting the CPU context on the current thread without segment registers.
server: Add support for generic device objects managed from the client side.
server: Add support for queuing ioctl calls to a device.
server: Add request to retrieve the next pending ioctl call for a device manager.
server: Add support for retrieving results of queued ioctls once they are done.
advapi32: Fix set process request, a pipe instance can only handle one request.
psapi: Don't print output parameters as strings.
kernel32: Fix typo in CreateActCtxA.
server: Stop exporting the console_input structure. Get rid of console.h.
Andrew Talbot (39):
advapi32: Exclude unused headers.
dsound: Constify some variables.
crypt32: Exclude unused headers.
dswave: Constify a variable.
compstui: Exclude unused headers.
comdlg32: Exclude unused headers.
gdi32: Constify some variables.
gdi32: Constify some variables.
dbghelp: Exclude unused headers.
ddraw: Exclude unused headers.
gphoto.ds: Constify a variable.
devenum: Exclude unused header.
dmstyle: Exclude unused headers.
dmband: Exclude unused headers.
dmusic32: Exclude unused headers.
dmime: Exclude unused headers.
dxerr9: Exclude unused header.
kernel32: Constify a variable.
imaadp32.acm: Constify some variables.
dxerr8: Exclude unused header.
dnsapi: Exclude unused header.
dpnet: Exclude unused headers.
dsound: Exclude unused headers.
ifsmgr.vxd: Constify some variables.
inseng: Exclude unused header.
imagehlp: Exclude unused headers.
infosoft: Exclude unused header.
itss: Exclude unused headers.
kernel32: Exclude unused headers.
kernel32: Exclude unused headers.
kernel32: Exclude unused headers.
kernel32: Exclude unused headers.
mcicda: Exclude unused headers.
localspl: Exclude unused headers.
mciwave: Exclude unused header.
mapi32: Exclude unused header.
mscms: Exclude unused headers.
msacm32: Exclude unused headers.
mlang: Exclude unused headers.
Andrey Turkin (6):
dbghelp: Zero-terminate module name in minidump.
shlwapi: Implement IConnectionPoint_SimpleInvoke.
hhctrl.ocx: Update HtmlHelp and its commands definitions, and partially implement data A->W translation.
hhctrl.ocx: Do not try to dereference NULL pointer if CreateHelpViewer failed.
hhctrl.ocx: Recognize and use topic specification in url or in data.
shlwapi: Implement IUnknown_CPContainerInvokeParam.
Aric Stewart (2):
ole32: Accelerators, like for the menu ones, should not fire on the keyup message.
gdi32: GetGlyphOutline needs to look at linked fonts as well.
Ben Taylor (3):
wineshelllink: Improve /bin/sh and awk compatibility.
wineinstall: Use `wine --version` instead of `which wine`.
winegcc: Allow -R and -z linker options.
Bernard Ladenthin (2):
browseui: Implement ClassFactory_LockServer in browseui dll.
browseui: Fixed ClassFactory_LockServer implementation.
Bill Medland (2):
kernel32/tests: Boundary test cases for SystemTimeToFileTime and GetDateFormat.
oleaut32/tests: Some boundary tests on VarBstrFromDate.
Damjan Jovanovic (2):
wine.inf: Move explorer to the windows directory.
shlwapi: Fix UrlCanonicalizeW's handling of filesystem paths.
Dan Hipschman (7):
widl: Get rid of the typeref_t structure, simplify code.
widl: Get rid of the tname field of var_t, simplify code.
widl: Add string_of_type function, prettify code.
widl: Remove redundant get_var_vt function.
widl: Simplify make_safearray.
widl: Remove dead code in write_msft.c.
widl: Remove var_t's ptr_level field and start write_pointers.
Dan Kegel (1):
advapi: Improve SetEntriesInAclA stub.
Detlef Riekenberg (8):
localspl: Code cleanup for XcvDataPort_AddPort.
winspool: Return the correct errorcode in OpenPrinter (Xcv).
winspool: Avoid crash on NULL parameter (XcvOpenPort in OpenPrinter).
localui: Implement AddPortUI.
localui: Implement ConfigurePortUI for LPT.
localui: Prefer builtin version.
localui: Add German resources.
ddraw/tests: Fix typos in messages.
Dmitry Timoshkov (6):
comctl32: Remove a stray back slash.
riched20: Add the tests for EM_SETTEXTEX/EM_GETTEXTEX in addition to WM_SETTEXT/WM_GETTEXT, make them pass under Wine.
gdi32: Handle errors in WineEngAddFontResourceEx.
gdi32: AddFontResource should return a number of added font faces.
advapi32: Add FILE_FLAG_BACKUP_SEMANTICS to the flags passed to CreateFileW to be able to get security information for directories as well as for files.
user32: Windows doesn't send the initialization messages to a dialog if a passed in dlgProc is NULL.
Emmanuel Maillard (4):
winecoreaudio: Handle non System Exclusive messages.
winecoreaudio.drv: MIDIIn_MessageHandler: Remove a TRACE and simplify skipping SysEx.
winecoreaudio.drv: Create only one MIDIOutPort and one MIDIInPort for all destinations and sources.
winecoreaudio.drv: Implement MIDIOut_Data when device is a MOD_MIDIPORT.
Eric Pouech (2):
kernel32: Implemented CreateActCtxA on top of CreateActCtxW.
kernel32: Set the new definition for an activation context, and implement adding/releasing references to it.
Francois Gouget (8):
d3drm/tests: Add missing '\n' to ok() calls.
d3drm: Fix compilation on systems that don't support nameless unions.
msi/tests: Add missing '\n' to ok() call.
Assorted spelling fixes.
ddraw/tests: Fix compilation on systems that don't support nameless unions.
msi/tests: Add missing '\n' to ok() calls.
crypt32: Add missing '\n' in FIXME() call.
wined3d: Add a missing '\n' to a trace.
H. Verbeet (16):
wined3d: Flip the coordinate system rather than the coordinates itself for onscreen surfaces in stretch_rect_fbo.
wined3d: Make the IWineD3DDeviceImpl_ColorFill TRACE a bit more useful.
wined3d: Bind GL_FRAMEBUFFER_EXT rather than GL_DRAW_FRAMEBUFFER_EXT in color_fill_fbo.
wined3d: Improve a few VBO traces.
d3d: Fix the surface locking rectangle validation.
d3d9: Add a surface locking test.
d3d8: Add a surface locking test.
ddraw: Add a surface locking test.
wined3d: Remove some redundant fields from IWineD3DBaseTextureImpl.
wined3d: Handle the ps_3_0 vPos field.
wined3d: Unload vertex weight data in case of EXT_VERTEX_WEIGHTING as well.
wined3d: Calling glDisableClientState() from loadVertexData() is redundant.
wined3d: Split texture coordinate loading from loadVertexData().
wined3d: Load texture coordinates even if no texture is bound to that stage at this time.
wined3d: Trace the VBO and stream number as well in drawPrimitiveTraceDataLocations.
wined3d: WINED3DSIO_POW should use the absolute value of the first source register.
Huw Davies (2):
oleaut32: Remove useless initialization of an [out] parameter.
ole32: Cope with a realloc returning a different pointer.
Jacek Caban (12):
mshtml: Fix offset in OnDataAvailable call.
mshtml: Remove auto detection of Mozilla and Mozilla ActiveX control.
mshtml: Reimplement IHTMTxtRange on top of nsIDOMRange.
mshtml: Added IHTMLTxtRange::get_htmlText implementation.
mshtml: CGID_Undocumented is CGID_DocHostCmdPriv.
mshtml: Added IHTMLBodyElement::CreateTextRange implementation.
mshtml: Split code from OnDataAvailable.
mshtml: Don't crash in OnStopBinding if This->binding is null.
mshtml: Move AddRequest call to the separated function.
mshtml: Split IPersistMoniker::Load.
mshtml: Added IPersistStreamInit::Load implementation.
mshtml: Added IPersistStreamInit::Load test.
James Hawkins (14):
msi: Add tests that show that costing is run in both the UI and Execute sequences.
msi: Reset the folder's resolved target before setting the target in CostFinalize.
msi: Run the costing actions for both the UI and execute sequences.
msi: Only allow valid styles in msi_dialog_get_style.
msi: Add the ES_AUTOHSCROLL style to the edit control.
msi: Set the text limit of the edit control if the limit is given.
msi: Remove incorrect ERR as messages can be sent before the control is created.
msi: Remove debugging printf statements.
msi: Add stub handlers for the remaing standard actions that reference tables.
msi: Add handling for the ReinstallMode control event.
msiexec: /quiet is the same options as /qn.
msi: Check the volume name when changing media.
msi: Deformat the key path before opening the key.
msi: Only check the volume label for every media after the first disk.
Jason Edmeades (1):
xcopy: Output to console in Unicode if possible, or OEM codepage otherwise.
José Manuel Ferrer Ortiz (1):
Some Spanish translation updates.
Juan Lang (4):
wintrust: Fix typo.
wintrust: Implement WintrustLoadFunctionPointers.
wincrypt.h: Add missing definitions.
crypt32: Implement CertEnumSystemStore.
Ken Thomases (1):
winebrowser: Don't put the default mailers or browsers into the registry.
Kevin Koltzau (1):
winbase.h: Define FILE_FLAG_OPEN_REPARSE_POINT.
Kirill K. Smirnov (4):
server: Fix access check in screen buffer handling.
kernel32/tests: Add tests for console screen buffer.
server: Move console codepages to the server.
kernel32/tests: Add tests for console codepages.
Konstantin Kondratyuk (1):
ntdll: Correct a copy/paste mistake in NtWriteFile.
Laurent Vromman (1):
gdi32: Complete WidenPath implementation.
Louis Lenders (2):
kernel32: Add stub for BindIoCompletionCallback.
gdi32: Add check for null pointer in SetDIBitsToDevice.
Maarten Lankhorst (2):
winealsa: Improve sound mixer detection.
winmm: Use criticalsection for determining wether timer is synchronously killable.
Marcus Meissner (3):
riched32: Avoid implicit time().
server: set_server_state needs to be called with non-NULL server.
msi/tests: Increase buffer size a bit.
Mikołaj Zalewski (4):
user32: Fix TabbedTextOut.
comctl32: treeview: Make the focus test pass under Windows XP.
comctl32: treeview: Treeviews shouldn't be sending NM_TOOLTIPSCREATED (with testcase).
shell32: Handle invalid cbSize in Shell_NotifyIcon[AW].
Misha Koshelev (32):
msi: Add OLE automation conformance test.
msi: Merge OLE automation conformance tests.
msi: Add base class for OLE automation objects.
msi: Expand IDL file to contain some OLE automation interface functions.
msi: automation: Implement Record::StringData.
msi: automation: Implement View::Execute, Fetch, and Close.
msi: automation: Implement Database::OpenView.
msi: automation: Implement a few functions from the Session object.
msi: automation: Implement Installer::OpenPackage.
msi: automation: Expose Installer object.
msi: Added handlers for JScript/VBScript actions that call one script function.
msi: Add JScript/VBScript support.
msi/tests: automation: Free memory after string conversion.
msi/tests: automation: Convert method names to Unicode on the fly to simplify adding new tests.
msi/tests: automation: Integrate test_createrecord_and_version properly.
msi: script: Discriminate properly between JScript and VBScript.
msi/tests: automation: Session::Installer conformance test.
msi: automation: Store parent Installer object in Session.
msi: automation: Implement Session::Installer.
msi: automation: Use proper parameter names.
msi: automation: Generalize interface-specific data storage in AutomationObject.
msi/tests: automation: Add tests for Installer::Products and Installer::ProductState.
msi: automation: Implement Installer::Products and Installer::ProductState.
msi: automation: Output FIXMEs for unknown member names.
msi/tests: automation: Add test for Installer::RegistryValue.
msi/tests: automation: Simplify ok_exception.
msi: automation: Clear all VT_BSTR variants returned by DispGetParam.
msi: automation: Display errors on create_automation_object failure.
msi: automation: Move VariantClears out of specific case statements when possible.
msi: automation: Display an error on create_session failure.
msi/tests: automation: Add more tests for Installer::RegistryValue.
msi: automation: Implement Installer::RegistryValue.
Mounir IDRASSI (6):
advapi32: Check for error in CryptEnumProviderTypesA and CryptEnumProvidersA.
wincrypt.h: Add missing definitions.
rsaenh: Fix read_key_container bug that prevents CryptAcquireContext from correctly loading the keys.
rsaenh: Use the correct registry key in RSAENH_CPAcquireContext.
crypt32: Correct the implementation of CertCreateSelfSignCertificate.
rsaenh: Add support for mandatory parameters to RSAENH_CPGetProvParam.
Paul Vriens (3):
setupapi/tests: SetupQueryInfOriginalFileInformationA is not available on win98.
msi/tests: Properly cleanup after each test.
d3drm/tests: d3drm is removed from Windows Vista.
Peter Oberndorfer (3):
ntdll: Call NtQueryAttributesFile in RtlDoesFileExists_U.
ntdll: Use correct prototype for thread function.
rpcss: Use correct prototype for thread function.
Rob Shearman (26):
dsound: Implement QueryInterface for the class factory objects.
dsound: Implement QueryInterface for KsPropertySet objects.
winex11.drv: Remove an unneeded include.
rpcrt4: Print the correct values when warning about a bad frag length.
atl: Implement AtlComQIPtrAssign.
atl: Add stubs for AtlIPersistStreamInit_Load and AtlIPersistStreamInit_Save.
setupapi: SetupCopyOEMInfW should preserve the basename when copying the inf file to the inf directory if possible.
ole32: Remove an unnecessary QueryInterface in CoRegisterClassObject that CoMarshalInterface will already do.
setupapi: The inf file containing the SourceDisksFiles and SourceDisksNames sections is the same as hinf if there is no layout file specified.
setupapi: Add stubs for SetupQueryInfOriginalFileInformationA/W.
setupapi: Partially implement SetupQueryInfOriginalFileInformationW.
ole32: CoGetClassObject shouldn't return REGDB_E_KEYMISSING, so convert it to REGDB_E_CLASSNOTREG.
ole32: Add test for registered class becoming invalid when apartment is destroyed.
ole32: Revoke registered class objects when the apartment they were registered in is destroyed, not when the last CoUninitialize is called.
ole32: Add tests for in-process registered class objects not being visible from different apartments.
ole32: COM_GetRegisteredClassObject should only retrieve objects that were registered in the current apartment.
ole32: Split CoRevokeClassObject into a separate function, COM_RevokeRegisteredClassObject, which acts on a RegisteredClass object.
ole32: Fix CoRevokeClassObject to return RPC_E_WRONG_THREAD if it was called from a different apartment than the one that called CoRegisterClassObject.
ole32: Add documentation about registered class objects only being visible in the apartment in which they were registered.
ole32: Add documentation for error info functions.
ole32: Add a test for the retrieved local class object in another thread being a proxy.
ole32: Don't release the drop target on process uninitialisation if not revoked, just release the memory.
setupapi: Don't copy an OEM inf file if the exact same OEM inf file already exists.
setupapi: Improve the stub for SetupQueryInfOriginalFileInformation
ole32: Move the logic in StgCreateDocfile for "if no share mode given then DENY_NONE is the default" to before the validateSTGM check.
setupapi: SetupOpenInfFile returns INVALID_HANDLE_VALUE on failure, not NULL.
Rolf Kalbermatter (4):
advapi32: Store process ID into status structure on startup.
advapi32: Add prototypes for EnumServicesStatusExA/W.
advapi32: Implement GetServiceDisplayNameA.
advapi32: Implement GetServiceDisplayNameW.
Stefan Dösinger (42):
ddraw: Search for d3d primary a bit differently.
ddraw: Do not access the surface connection structure directly in SetPalette.
ddraw: Move the additional surface creation into a seperate function.
ddraw: Complex surfaces form a tree.
ddraw: Add a test for surface attachments.
ddraw: Store a WineD3DBaseTexture instead of a WineD3DTexture.
d3d: Pass the cube face to Create*Texture's surface creation callback.
ddraw: Cube texture support.
ddraw: Cube map structure test.
ddraw: Update the wined3d depth stencil on device creation, render.
wined3d: Add missing prototypes for GL_ARB_vertex_blend.
d3d: Calculate the size of WINED3DFVF_XYZBx FVFs.
ddraw: Forward all 4 world matrices to wined3d.
wined3d: Implement vertex blending using GL_ARB_vertex_blend.
ddraw: Fix reported caps on compressed surfaces.
wined3d: Full surface DXTn copy.
ddraw: Adjust the d3d viewport when changing the back buffer.
ddraw: Primary surfaces always have screen size.
d3d: Move clippers from DDraw to wined3d.
wined3d: Make the blit -> flip work for windowed rendering.
ddraw: Forward the mag filter correctly to wined3d.
wined3d: Handle DDPCAPS_ALPHA.
wined3d: Fix front buffer coords for gdi surfaces.
wined3d: Unset the StreamIsUP flag in ProcessVertices.
wined3d: Report only D16, D24S8 and D24X8 depth stencil formats as supported.
wined3d: Implement environment bump mapping with GL_ATI_envmap_bumpmap.
ddraw: More tests and fixes on surface attachments.
wined3d: Some more ProcessVertices fixes.
ddraw: Some caps fixes.
wined3d: Unload vertex weight data in unloadVertexData.
wined3d: Support bump environment mapping using GL_NV_texture_shader.
ddraw: Always set fullscreen mode in wined3d.
ddraw: Fix stupid bug when setting surface client memory.
wined3d: Manage private data in a wine linked list.
ddraw: Remove all non-d3d7 capability flags.
ddraw: Use point filter for blit operations.
ddraw: GetSurfaceDesc returns the surface memory while the surface is locked.
wined3d: Destroying the resource frees all private data.
wined3d: Implement DDBLT_DEPTHFILL on the active depth stencil target.
ddraw: Avoid fallout of failing tests.
wined3d: Only addref clippers if one exists.
wined3d: Prevent wrong bumpenvmap warnings.
Stefan Leichter (1):
advapi32: Fix initial cleanup of the registry keys used for testing.
Thomas Spear (2):
uninstaller: Fix trace message.
regedit: Spelling and grammar fixes.
Tim Schwartz (1):
net.exe: Initial stub.
Vitaliy Margolen (2):
ntdll: Use correct full access bitmask in NtQuerySecurityObject.
kernel32: Fix off by one error.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.36 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Midi support in the CoreAudio driver.
- Mixer support in the Alsa driver.
- A lot of MSI fixes.
- Implementation for most D3DRM functions.
- The usual assortment of Direct3D fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.36.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.36.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.35:
Alasdair Sinclair (1):
advapi32: Fix one byte array overflow during DES unhash.
Alban Browaeys (2):
msi: Move msi_free(msiFilePath) to enable ERR message to use it before it is freed.
wininet: Fix szCacheContent in URLCacheContainer_OpenIndex.
Alexandre Julliard (19):
kernel32: Use the correct access rights when opening named pipes.
server: Add infrastructure for ioctl server request.
server: Implement the FSCTL_PIPE_DISCONNECT ioctl on the server side.
server: Move the server part of device unmounting to the ioctl processing.
server: Change the timeout handling to use NT-style 64-bit timeouts everywhere.
server: Add a specific data type for ioctl codes so they can be printed as symbols.
server: Move the FSCTL_PIPE_WAIT ioctl implementation to the server.
server: Allow specifying the status code to return on file descriptors that don't have a Unix fd.
server: Moved the FSCTL_PIPE_LISTEN implementation to the server.
server: Use the standard file descriptor wait queue for named pipe server async waits.
server: Don't give out read/write access to the named pipe device.
dbghelp: Don't print garbage chars in ERR message.
version: Avoid size_t type in traces.
server: Return a more correct fd type for anonymous files.
configure: Use AC_SEARCH_LIBS for the Solaris libs to avoid unused function checks.
winedbg: Properly handle EOF on input.
cabinet: Make sure we don't try to close an invalid file handle.
make_makefiles: Avoid duplicate .gitignore entries.
winecoreaudio: Avoid sizeof in trace.
Alexey Markachev (1):
ntdll: Fix mistake in Novosibirsk time zone.
Andrew Riedi (1):
winex11.drv: Add legacy 32-bit cursor support.
Andrew Talbot (27):
crypt32: Constify some variables.
crypt32: Constify some variables.
user32: Make function definitions and declarations agree.
slwapi: Make function definitions and declarations agree.
slwapi: Make function definitions and declarations agree.
dbghelp: Constify some variables.
uxtheme: Fix conflicting declarations.
dbghelp: Constify some variables.
dbghelp: Constify some variables.
ddraw: Constify some variables.
activeds: Exclude unused headers.
acledit: Exclude unused headers.
advpack: Exclude unused headers.
avicap32: Exclude unused header.
avifil32: Exclude unused headers.
amstream: Exclude unused headers.
dinput: Constify some variables.
dmcompos: Constify a variable.
dmusic: Constify a variable.
dmscript: Constify a variable.
dmloader: Constify some variables.
dmime: Constify some variables.
dmstyle: Constify some variables.
dmband: Constify some variables.
dnsapi: Constify some variables.
dplayx: Fix a typo.
dplayx: Constify some variables.
Aric Stewart (4):
taskmgr: Add Japanese resource.
shell32: SHGFI_EXETYPE flag should have the files returning 0 if they are DLL images.
gdi32: Make the comparison for system link font replacement not case sensitive.
usp10: Do not crash in ScriptPlace if pABC is null.
Ben Taylor (2):
configure: Fix to properly recognize functions on Solaris.
wineoss: Fix to compile on Solaris 10.
Bernd Buschinski (1):
wined3d: Fix drawStridedSlow typo.
Chia-I Wu (1):
kernel32: Fix non-terminated separator string.
Chris Robinson (2):
quartz: Create DirectSound device and buffer at filter creation and connection respectively.
quartz: Partially implement the MPEG 1 Stream Splitter filter.
Clinton Stimpson (1):
riched20: Set modify state when removing text.
Damjan Jovanovic (1):
mapi32: MAPIAdminProfiles stub.
Dan Hipschman (4):
widl: Add --prefix-* options (take 3).
rpcrt4: Add tests for RPC and widl generated code.
widl: Declare fixed-size array args as pointers to arrays.
rpcrt4: Add a testcase for RPCs with fixed-size arrays.
David Adam (15):
include: Add d3drmdef.h header.
d3drm: Implement D3DRMVectorAdd.
d3drm: Implement D3DVectorSubtract.
d3drm: Implement D3DRMVectorCrossProduct.
d3drm: Implement D3DRMVectorDotProduct.
d3drm: Implement D3DRMVectorModulus.
d3drm: Implement D3DRMVectorscale.
d3drm: Implement D3DRMVectorNormalize.
d3drm: Implement D3DRMVectorRandom.
d3drm: Implement D3DRMVectorReflect.
d3drm: Implement D3DRMQuaternionMultiply.
d3drm: Implement D3DRMVectorRotate.
d3drm: Implement D3DRMMatrixFromQuaternion.
d3drm: Implement D3DRMQuaternionFromRotation.
d3drm: Implement D3DRMQuaternionSlerp.
Detlef Riekenberg (9):
include/winspool: Declare missing function.
spoolss: Build the import library.
localspl: Implement XcvData_AddPort.
localui: Implement DeletePortUI.
localspl: DeletePort is now in localui.dll.
localui: Implement ConfigurePortUI.
localspl: ConfigurePort is now in localui.dll.
localui: Avoid crash on NULL pointer.
localui: Implement ConfigurePortUI for COMx.
Dmitry Timoshkov (7):
version: Add a VerQueryValue test, make it mostly pass under Wine.
advapi32: Thunk GetFileSecurityW to NtQuerySecurityObject.
comctl32: Fix an off by one error in ImageList_Remove.
comctl32: Use packing only for public ILHEAD structure, 2 bytes packing is enough.
comctl32: Add an image list storage test, make it pass under Wine.
comctl32: Add more image list tests, fix one problem found.
user32: Windows doesn't redraw a window if it is being just moved.
EA Durbin (1):
sxs: Add new dll stub.
Emmanuel Maillard (17):
winecoreaudio: Initial MIDI support on Mac OS X.
winecoreaudio: Implement MIDI_NotifyClient, MIDIOut_Open and MIDIOut_Close.
winecoreaudio: Implement MIDIOut_GetDevCaps and MIDIOut_GetNumDevs.
winecoreaudio: Implement MIDIOut_Prepare and MIDIOut_Unprepare.
winecoreaudio: Implement MIDIOut_Data.
winecoreaudio: Implement MIDIOut_LongData.
winecoreaudio: Implement MIDIOut_GetVolume and MIDIOut_SetVolume.
winecoreaudio: Implement MIDIOut_Reset.
winecoreaudio: Initial MIDI In support on Mac OS X.
winecoreaudio: Initial MIDI In Mach message handling.
winecoreaudio: Add MIDI In messages in MIDI_NotifyClient.
winecoreaudio: Implement MIDIIn_Open and MIDIIn_Close.
winecoreaudio: Implement MIDIIn_GetNumDevs and MIDIIn_GetDevCaps.
winecoreaudio: Implement MIDIIn_Start and MIDIIn_Stop.
winecoreaudio: Implement MIDIIn_Reset.
winecoreaudio: Implement MIDIIn_AddBuffer.
winecoreaudio: Implement MIDIIn_Prepare and MIDIIn_Unprepare.
Eric Pouech (1):
acledit: Stubbed out acledit DLL, needed by SysInternals process explorer.
Fabian Bieler (2):
d3d9/tests: Fix fog with shader test.
wined3d: Remove usesFog flag from IWineD3DVertexShaderImpl.
Francois Gouget (2):
advapi32: Fix and extend the RegQueryValueEx() tests.
advapi32/tests: Use memcmp() instead of strcmp() so that we can check 'intrazeroed' strings.
Gerald Pfeifer (1):
server: Silence compiler warning in fd_queue_async().
H. Verbeet (16):
wined3d: Add a function for dumping FBO status codes.
wined3d: Dump the FBO's attachments when its status is GL_FRAMEBUFFER_UNSUPPORTED_EXT.
wined3d: Use GL_UNSIGNED_BYTE as data type for WINED3DFMT_A8.
wined3d: Ignore SetTextureStageState on unsupported texture stages.
wined3d: Set the FBO drawbuffer using glDrawBuffer when ARB_DRAW_BUFFERS is not supported.
wined3d: Add a function to determine if a surface is the front or the backbuffer for a swapchain, and return the corresponding GLenum.
wined3d: Use surface_get_gl_buffer where appropriate.
wined3d: Properly handle the difference between GL_BACK and GL_FRONT for onscreen surfaces.
wined3d: Don't try to clear the depth stencil if there is none.
wined3d: Implement ColorFill using FBOs, if they're being used.
wined3d: Remove GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT from debug_fbostatus().
wined3d: Output pretty GL errors in checkGLcall and vcheckGLcall.
wined3d: Actually use the calculated mipmap surface sizes in IWineD3DDeviceImpl_CreateVolumeTexture.
wined3d: Improve IWineD3DVolumeImpl_LoadTexture TRACE output.
wined3d: The second parameter to glTexImage3DEXT isn't a GLenum.
wined3d: Fix the return value for IWineD3DDeviceImpl_ColorFill.
Hans Leidekker (9):
iphlpapi: Only call res_init() once per process.
msvcrt: Correct the spec file entry for _makepath.
shell32: Add a stub implementation for OpenAs_RunDLL.
urlmon: Add an implementation for CreateURLMonikerEx based on existing code for CreateURLMoniker.
msi: Install translators in the InstallODBC custom action.
msi: Install data sources in the InstallODBC custom action.
shell32: Add a stub implementation for SHMapIDListToImageListIndexAsync.
msi: Add a stub implementation for MsiEnumProductsEx{A, W}.
expand.exe: Add support for cabinet files.
Huw Davies (5):
user32: Keep track of whether the app has asked for the text buffer handle.
user32: Add a function to return the length of the text buffer.
user32: Cache the text buffer length to avoid excessive calls to strlenW.
oleaut32: Don't try to free the typeinfo if get_funcdesc fails.
oleaut32: Rewrite get_funcdesc to avoid using the funcdesc's oVft member so that it works correctly for non-dual dispinterfaces.
Hwang YunSong(황윤성) (2):
cmd: Updated Korean resource.
cmd: Updated Korean resource.
Jacek Caban (1):
hhctrl.ocx: Don't insert content item that could not be merged.
James Hawkins (9):
msi: Add tests for the concurrent installation custom action.
msi: Generalize the msi_custom_action_info struct so other custom actions can use it.
msi: Run the InstallExecute sequence if the InstallUISequnce table is empty.
msi: Add handling for the concurrent install custom action.
msi: Return MSICONDITION_NONE in MsiDatabaseIsTablePersistent if the table doesn't exist.
msi: Add the _Property table back, with tests.
msi: Add an internal MSI_ViewModify.
msi: Abstract MSI_RecordSetStream.
msi: Implement special handling for the _Streams table.
Jan Zerebecki (2):
user32: Fix to succeed reliably in test where it works by accident.
wined3d: Remove resourceStoreCriticalSection.
Jason Edmeades (2):
cmd.exe: Implement a basic 'more'.
cmd.exe: Support for DEL filename /s.
Jesse Allen (1):
wined3d: Remove fake nvidia card in GetAdapterIdentifier.
José Manuel Ferrer Ortiz (1):
winspool.drv: Add Spanish resources.
Kai Blin (1):
secur32: Move NTLM debug output to a seperate "ntlm" channel.
Ken Thomases (3):
shell32/tests: Added to-do test showing a bug with file paths with spaces.
shell32: Don't break file path at spaces in ShellExecuteEx if quoted.
shell32/tests: Test that quoting file path prevents masking at space.
Kevin Koltzau (1):
user32: Draw menu item bitmaps in the correct location when the scroll arrows are active.
Kirill K. Smirnov (3):
xcopy: Add Russian resource.
kernel32: Add partial stub for NeedCurrentDirectoryForExePath.
kernel32/tests: Add tests for NeedCurrentDirectoryForExePath.
Lei Zhang (2):
wineshelllink: Fall back to $HOME if $HOME/Desktop does not exist.
comdlg32: Initialize CommDlgExtendedError() return value for file dialogs.
Maarten Lankhorst (14):
winmm: Implement CALLBACK_WINDOW.
winmm: Pass the right message to hwnd from mixer callback.
winecfg: Update Dutch resources.
dsound: Make sure we're holding the lock on Drop And Stop.
dsound: Don't deadlock in capture because of callback.
winealsa: Drop unplayed frames instead of waiting for them.
winealsa: Clear WAVECAPS_DIRECTSOUND for capture.
winealsa: Remove disabled code.
winealsa: Introduce mixer code.
winealsa: Implement opening/closing and caps of device.
winealsa: Implement mixer controls, and add GetLineInfo.
winealsa: Implement GetLineControls in mixer.
winealsa: Implement Get/SetControlDetails in mixer.
winealsa: Unset WAVECAPS_DIRECTSOUND properly for capture.
Marcus Meissner (1):
msi: Do not mark the tables const.
Michael Kaufmann (1):
gdi32: Add a stub for CancelDC.
Michael Stefaniuc (2):
janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing out the allocated memory in a later call.
winealsa: Do not check for non-NULL before HeapFree'ing a variable as the check is redundant.
Michał Wiernowolski (1):
winealsa: Improved handling of SysEx MIDI messages.
Mikołaj Zalewski (6):
winecfg: Add Polish translation.
regedit: Update Polish translation.
comctl32: toolbar: Merge TOOLBAR_GetButtonInfoA and TB_GetButtonInfoW.
comctl32: toolbar: Don't execute TB_GETBUTTONINFO if cbSize is invalid.
comctl32: toolbar: In CreateToolbarEx the default bitmap size is also 16x16.
shlwapi: Fix the handling of overflows in PathCombine[AW].
Paul Vriens (8):
crypt32/tests: Use A-version for registry functions.
ws2_32/tests: Add required parameter to CreateThread (for Win9x and WinME).
kernel32/tests: CreateRemoteThread is not implemented on win98.
kernel32/tests: GetComputerNameW is not implemented on win98.
kernel32/tests: GetLongPathNameW is not implemented on win98.
setupapi/tests: SetupDiCreateDeviceInfoListExW is not implemented on win98.
setupapi/tests: SetupCopyOEMInfA is not available on NT4.
kernel32/tests: Resource functions are not implemented on win98.
Rob Shearman (20):
msi: Add support for non-persistent strings.
msi: Move string loading and saving to string.c.
msi: Cleanup unneeded string table functions.
msi: Remove the hash table for a column when one of its values is modified since it will now be invalid.
msi: Store the column info in the MSITABLE structure.
msi: Move table creation to table.c.
msi: Create the table directly in create_table instead of requiring it to be loaded after saving.
msi: The HOLD keyword implies a temporary table, whereas database importing should lead to permanent tables, so remove the HOLD keyword.
msi: Add support for adding temporary/non-persistent data to tables.
msi: Don't add info to the _Columns table for non-persistent tables.
msi: Add a persistent flag to tables.
msi: All columns being temporary means the table is non-persistent.
msi: Add a non-persistent string instead of a persistent one if the table or row is non-persistent.
msi: Set rec to NULL after calling msiobj_release on it in msi_create_table so that we don't call msiobj_release on it again.
msi: Create the _Property table as a temporary table so that the properties aren't saved to the .msi file.
msi: Fix an off-by-one error when calculating the path and filename for the action data in the SelfRegModules action.
kernel32: Add the directory the executable was loaded from to the module search path if the module file name doesn't contain a path.
winebuild: Refer to strings used in generated stubs by symbol rather than by offset to avoid problems when the compiler aligns the strings by 2 or more bytes.
atl: Use the first entry in the object map in AtlInternalQueryInterface when IUnknown is requested.
atl: AtlModuleGetClassObject should store an intermediate pointer in obj->pCF and then query this for the requested interface.
Rolf Kalbermatter (6):
advapi32: Implement QueryServiceStatusEx.
advapi32: Make QueryServiceStatus use QueryServiceStatusEx.
advapi32: Make SERVICE_STATUS_PROCESS match the declaration in MSDN and PSDK.
advapi32: Add EnumServicesStatusExA/W stub implementation.
advapi32: Make struct service_data_t have the new SERVICE_STATUS_PROCESS struct.
advapi32: Make service_start_process return the pid to the caller.
Stefan Dösinger (15):
d3d: Enumerate palettized formats for ddraw.
d3d: Remove dependency on ddraw.h header.
d3d9: Do not allow Direct3D9::GetAdapterModeCount to be called with D3DFMT_UNKNOWN.
d3d9: Rework the converted vertex declaration management.
wined3d: Do not upload to the vbo if there's nothing to do.
wined3d: The cursor texture doesn't have GL_APPLE_client_storage backing.
wined3d: Do not allocate surfaces unless needed.
wined3d: Add a method to create a declaration from a fvf.
wined3d: Implement CreateVertexDeclarationFromFVF.
ddraw: Get rid of FVFs.
d3d: Fix ProcessVertices.
ddraw: Add a test for EnumSurfaces.
ddraw: Use EnumAttachedSurfaces to search for a render target.
ddraw: Search for texture sublevels with GetAttachedSurface.
ddraw: Use EnumAttachedSurfaces for SetColorKey.
Stefan Leichter (1):
advapi32: More tests for RegDeleteTreeA.
Tom Spear (1):
winecfg: Change WINE_ERR to WINE_TRACE since there is no real error.
Yuval Fledel (8):
include: Fix a typo in wincrypt.h.
userenv: Make GetProfileType report a normal (non-roaming) profile.
include: Introduce ntsecpkg.h.
rsaenh: Convert handle type from unsigned int to HCRYPTKEY.
include: Introduce SECPKG_INTERFACE_VERSION and extend PSECPKG_FUNCTION_TABLE accordingly.
schannel: Implement SpLsaModeInitialize and GetInfo.
schannel: Implement SpUserModeInitialize.
schannel: Tests for SpLsaModeInitialize, SpUserModeInitialize and GetInfo.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.35 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Broken aRts sound driver now removed for good.
- Many fixes to the Quartz DLL sound support.
- File I/O performance improvements.
- The usual assortment of Direct3D fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.35.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.35.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.34:
Alessandro Pignotti (1):
dplayx: Implement proper interface locking for DP_EnumSession.
Alexandre Julliard (39):
make_makefiles: Add the .INIT/.BEGIN rules for the main makefile.
server: Add a generic wait queue to the file descriptor object.
server: Avoid redundant polling in fd_queue_async_timeout.
server: Take advantage of the fd generic wait queue to remove a lot of serial code.
server: Use the fd generic wait queue for directory change I/O operations.
server: Make async I/O queues into real objects.
server: Check file access in register_async before calling the object method.
kernel32: Added some last error tests for mailslots.
server: Add a separate function to set the timeout of an async I/O operation.
server: Make timeout status for async I/O specifiable. Fix mailslots timeout handling.
server: Hold a pointer to the queue from the async operations.
make_requests: More aggressive grepping for status values.
server: Add support for associating a file descriptor to a message queue.
winex11.drv: Store the display file descriptor directly in the server message queue.
server: Fix the handling of the signaled status for file descriptors.
server: Use the standard file descriptor signal mechanism for directory changes.
ntdll: Avoid setting status in IO_STATUS_BLOCK until the I/O operation is done.
ntdll: Avoid relying on the IO_STATUS_BLOCK for storing the current transfer count.
ws2_32: Don't access the IO_STATUS_BLOCK until the I/O operation is finished.
ntdll: Make test for heap boundaries more strict in HEAP_FindSubHeap.
kernel32: Add a bit of slack to the mailslot timeout test.
ntdll: Reimplement NtReadFile.
ntdll: Reimplement NtWriteFile.
ntdll: Rely on the server to queue the final APC for asynchronous read/write.
ntdll: Use send(2) instead of write(2) for zero-byte writes to sockets.
ntdll: Add some test cases for asynchronous I/O.
setupapi: Avoid using sizeof in traces.
server: Add support for restarting an async I/O when the client side couldn't finish it right away.
ntdll: Simplify the async read/write code now that most of the work is done in the server.
ntdll: Determine the async read avail_mode flag from the client side.
server: Explicitly shutdown closed pipes to prevent access from file descriptors cached in the client.
kernel32: Add SYNCHRONIZE access to mailslot handles.
server: Store the opening options in the file descriptor instead of in the individual objects.
server: Rename the get_file_info function to get_fd_type and get rid of the flags.
ntdll: Store the file access and options in the fd cache, and get rid of the dynamic flags.
shell32: Have _ILCreateFromFindDataW also create a FileStructW type of pidl.
server: Create a separate fd object for each mailslot writer. Make them first-class file handles.
server: Don't bother with default entry points for objects that don't even return an fd.
winex11.drv: Hack to disable XInitThreads when an XIM is used.
Andrew Talbot (35):
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
advapi32: Constify some variables.
atl: Constify some variables.
advpack: Constify some variables.
comcat: Constify some variables.
avifil32: Constify some variables.
comdlg32: Constify some variables.
comdlg32: Constify some variables.
comdlg32: Constify some variables.
comdlg32: Constify some variables.
comdlg32: Constify some variables.
comdlg32: Constify some variables.
comdlg32: Remove inappropriate const qualifier.
include: Remove superfluous semicolons.
d3d8: Void functions should not return a value.
d3d9: Void functions should not return a value.
kernel32: Remove superfluous semicolons.
mapi32: Void functions should not return a value.
crypt32: Constify some variables.
mshtml: Void functions should not return a value.
msvcrt: Remove superfluous semicolons.
ntdll: Void functions should not return a value.
ntdll: Remove superfluous semicolons.
ole32: Void functions should not return a value.
oleaut32: Remove superfluous semicolons.
András Kovács (2):
ntdll: Add Vista version option.
winecfg: Add Windows Vista version option.
Aric Stewart (8):
comctl32: Unset active page while setting a new active page for a propsheet.
comctl32: Propsheet exception fix.
ole32: Storage optimization.
msi: Register fonts with full target paths as applications can and will install fonts to places other than the windows/fonts directory.
shell32: Avoid unneeded A->W conversions in _ILSimpleGetTextW.
shell32: Update the debug functions to handle Unicode value pidl.
shell32: Use _ILSimpleGetTextW instead of using _ILGetTextPointer
msi: Do not crash in MsiGetUserInfo if org, user or serial are not present, instead return USERINFOSTATE_ABSENT.
Byeong-Sik Jeon (2):
regedit: Support REG_MULTI_SZ creation and editing.
regedit: Update Korean resource.
Chris Robinson (23):
quartz: Don't fill the dsound buffer with small amounts.
quartz: Remove errant parser output pins on input connection failure.
quartz: Set the sample time based on the number of bytes read before sending it downstream.
quartz: Use a safe APC to kill the PullPin thread when the PullPin is being released.
quartz: Use a second-long DSound buffer for playback.
quartz: Hold a reference on the PullPin's filter while the processing thread is alive.
quartz: Connect input when the pins connect, not when querying.
quartz: Add a QueryConnect method for transform filters.
quartz: Break loop on error in ACMWrapper.
quartz: Implement Get/SetSyncSource for the FilterGraph's IMediaFilter interface.
quartz: Don't call ReleaseSemaphore on NULL semaphore handles.
quartz: Tell filters to stop sending data when the chain is broken.
quartz: Avoid releasing NULL objects.
quartz: Send a notification when the filter graph clock changes.
quartz: Use more precise positioning information for the DSound filter's reference clock.
quartz: Add partial implementation of IReferenceClock for DSoundRenderer.
quartz: Add a cleanup callback for parser filters to call on release.
quartz: Make sure cached media samples are released for parser filters.
quartz: Fix ALIGN macros.
quartz: Fix error with operator precedence.
quartz: Pass the media sample to the individual transform filter callbacks.
winedbg: Align module addresses to 8 characters.
quartz: Implement IAMFilterData interface for IFilterMapper.
Dan Hipschman (1):
rpcrt4: Add tests for RpcServerListen and friends.
Dan Kegel (2):
imagehlp: BindImageEx stub should report success.
winex11.drv: GetAsyncKeyState must check mouse buttons, too.
Detlef Riekenberg (4):
localui: Add localui.dll with stubs.
localui/tests: Add initial test.
localspl/tests: Remove duplicate tests.
localui: Add version resource.
Dmitry Timoshkov (8):
kernel32: Add GetCPInfo test.
gdi32: Make GetKerningPairsA not fail for fonts with SYMBOL charset.
winspool: Add a test for DeviceCapabilities, fix some bugs found.
shlwapi: Fix a forward to user32.PrivateExtractIconExW.
user32: Windows uses ptMaxTrackSize to set an initial window size not ptMaxSize.
winebuild: Check if a given forward does exist in one of the imported dlls, fix a couple of problems detected.
gdi32: Fix a couple of problems with negative lfWidth test.
ntdll: Fix a compiler warning.
Eric Pouech (3):
winedbg: When reloading real PE modules from a minidump, also look in the search path (as we do for ELF modules).
winedbg, winedump: Extended some info printed from system info directory in minidump about the CPU.
taskmgr: Let the debug channels work again.
Fabian Bieler (7):
wined3d: Fix GLSL cmp instruction for INF and NAN arguments.
wined3d: Fix GLSL cnd instruction for INF and NAN arguments.
wined3d: Add support for float texture formats back in.
wined3d: Fix UpdateSurface for sourceRect != sourceWidth.
wined3d: Fix GLSL cnd instruction.
wined3d: Add GL_EXT_framebuffer_blit to extension handler.
wined3d: Mark vertex shader 3.0 as foggy shaders if they write out the fog coord.
Felix Nawothnig (13):
gdi32: Properly handle negative font widths.
wined3d: Make CreateCubeTexture fail when not supported.
wined3d: Downgrade some ERRs to FIXMEs.
wined3d: Only issue state_patchsegments FIXME once.
comctl32: Fix item rect calculation.
comctl32: Use appropriate font for header drag image.
taskmgr: Use default font for proc listview.
comctl32: Allow destruction of toolbar in BN_CLICKED handler.
comctl32: Allow enabling TVS_CHECKBOXES on the fly.
d3d8: Add missing relay trace.
wined3d: Allow np2 textures to be loaded for SFLAG_INDRAWABLE.
wined3d: Preload target in ActivateContext() for ORM_BACKBUFFER/ORM_PBUFFER.
wined3d: Issue an error when the render target is read back without SFLAG_INDRAWABLE being set.
Francois Gouget (8):
ole32/tests: Spelling fix.
ole32/tests: Spelling fix.
Assorted spelling and English fixes.
shell32/tests: Fix some expected FindExecutable() error codes.
shell32/tests: End the lines with CR+LF otherwise the profile APIs are unable to read them back on Win >= 2000.
shell32/tests: On Windows 98 FindExecutable() does not '\0' terminate the returned command which caused many tests to fail.
shell32/tests: On NT4 FindExecutable() returns an extra backspace character in some tests.
oleaut32/tests: Fix compilation on systems that don't support nameless structs or unions.
H. Verbeet (16):
wined3d: Handle FBO attachments slightly more efficiently.
wined3d: Fixup FBO depth attachments when the depth attachment is larger than the render target.
wined3d: Add a function to dump WINED3DTEXTUREFILTERTYPE values.
wined3d: Make bind_fbo a bit more generic.
wined3d: Separate attaching a surface to an FBO from set_render_target_fbo.
wined3d: Use the framebuffer blit extension to implement StretchRect.
wined3d: Add some StretchRectFilterCaps.
wined3d: Don't report render target formats we don't support as supported.
wined3d: Display the stream offset in GetStreamSource/SetStreamSource traces.
wined3d: Set the stream offset to 0 in DrawPrimitiveUP/DrawIndexedPrimitiveUP.
wined3d: Add some traces to stretch_rect_fbo.
wined3d: Remove some redundant IWineD3DSurface_PreLoad calls from stretch_rect_fbo.
wined3d: Disable the scissor test in stretch_rect_fbo.
wined3d: Disable the scissor test for depth blits.
wined3d: Dirtify the sampler used by IWineD3DSurface_PreLoad in IWineD3DSurfaceImpl_BltOverride.
wined3d: Fix some swizzles on scalars.
Hans Leidekker (8):
wintrust: Improve a number of stubs.
setupapi: Implement SetupGetFileCompressionInfoEx{A, W}.
setupapi: Add tests for SetupGetFileCompressionInfoEx.
setupapi: Implement SetupDecompressOrCopyFile{A, W}.
setupapi: Add tests for SetupDecompressOrCopyFile.
setupapi: Remove debug traces from allocation routines.
setupapi: Implement SetupGetFileCompressionInfo on top of SetupGetFileCompressionInfoEx.
kernel32: Allow any amount of whitespace between the words ANSI and SCSI in /proc/scsi/scsi.
Huw Davies (3):
wineps.drv: Add a heuristic to cope with resolution strings of the form "nnnmmmdpi" (ie without the 'x' separator).
winspool.drv: Implement level 1 support for EnumPrinters.
imagehlp: Add support for the indices array passed to ImageEnumerateCertificates.
Ivan Gyurdiev (2):
d3d9: Break out two helper functions from test_fvf_to_decl.
d3d9: Add a test for the converted vertex decl.
Jacek Caban (5):
mshtml: Change TRACE to FIXME in stubs.
mshtml: Added IHTMLBodyElement::get_background implementation.
mshtml: Correctly handle utf-16 encoded pages.
mshtml: Added IPersistFile::Save implementation.
mshtml: Added IDM_COMPOSESETTINGS and IDM_HTMLEDITMODE stub implementation.
James Hawkins (1):
msi: Reset the is_extracted flag when every cabinet is loaded.
Jason Edmeades (20):
xcopy: Add support for /EXCLUDELIST:file1+file2 etc.
xcopy: Add support for /D and /D:m-d-y.
xcopy: Rearrange code to closely match windows ordering.
xcopy: Move all messages into an English resource file.
xcopy: Update comments with unsupported operations and current status.
xcopy: Add help.
xcopy: Make displayed names mirror windows.
xcopy: /E implies recursive (fixes ActiveState Perl installer).
xcopy: Hack/workaround for filenames starting with a '.'.
oleaut32: Convert to VT_DECIMAL fails with overflow (with test).
cmd.exe: Only search for supplied command as-is if it includes an extension.
cmd.exe: Attempt to launch pgm even if fails to locate it.
cmd.exe: Fix dir filename /s and resolve many output differences.
cmd.exe: Make dir support multiple parameters.
cmd.exe: Make dir a* b* or dir a* b* /s mirror windows.
cmd.exe: Partially fix 'dir *.' (ie files with no extension).
cmd.exe: Add support for move with simple wildcards.
cmd.exe: Add move support for wildcards and directories.
cmd.exe: Add prompting and COPYCMD plus /Y support to move.
cmd.exe: Fix regression when launching a fully qualified program.
Kai Blin (1):
ntdll: Don't use settimeofday() to attempt to set the timezone.
Laurent Vromman (3):
gdi32: Add two basic tests to check what WidenPath does.
gdi32: Correction of WidenPath behaviour when pen width is 1.
gdi32: Correct WidenPath behaviour when working on an open path.
Lei Zhang (5):
advapi32: Spelling fixes.
comctl32: Fix first day of the week in monthcal.
comctl32: More monthcal hit tests.
user32: WM_ACTIVATEAPP on minimize message test.
comctl32: monthcal: GetMonthRange Tests.
Louis Lenders (1):
user32: Add RealChildWindowFromPoint.
Maarten Lankhorst (2):
winearts.drv: Kill off winearts.
winecfg: Close audio driver when not needed any more.
Marcus Meissner (2):
ntdll: Remove superflous NULL checks.
configure: Include <sys/types.h> before including <linux/joystick.h>.
Michael Ploujnikov (1):
wined3d: Remove DDBLT_WAIT fixme.
Michael Stefaniuc (3):
msvcrt: Move the code to demangle a name with its template argument list out of get_class() and into a separate function.
msvcrt: Demangle a C++ mangled string that is only a name with it's template argument list.
ws2_32/tests: Remove redundant NULL check before HeapFree().
Paul Vriens (11):
advapi32/tests: Reopen the main handle if needed.
advapi32/tests: Some cleanup.
ole32/stg_bigblockfile: Check page before use (Coverity).
odbccp32: Don't print *pcbPathOut as it can be NULL (Coverity).
ntdll/tests: Use GetModuleHandle and skip.
user32/tests: Don't run unicode tests if not supported.
advapi32/tests: Make sure NT4 and W2K tests don't fail.
setupapi/tests: Run tests on win98 again.
advapi32/tests: Use skip when OpenSCManagerA is not implemented.
advapi32/tests: Fix RegQueryValueExA test for win9x and ME.
advpack/tests: Don't hardcode the windows directory.
Peter Beutner (2):
dinput: Add missing definition to public header.
ntdll: Remove one exception test.
Rob Shearman (21):
urlmon: Fix a reference count leak that would keep the module alive when it shouldn't.
advpack: Call OleInitialize before registering OCXs, like native does.
advpack: Stop processing if there was an error registering an OCX.
ntdll: Pass the correct value to NtClose in the tests.
msi: Don't wait on closed handles in ACTION_FinishCustomActions.
atl: AddRef the object being returned in AtlInternalQueryInterface, not "this".
ole32: Convert the OpenDll list to a standard Wine list.
ole32: Move the in-process module loading to COMPOBJ_DllList_Add.
ole32: Move the handling of loading a dll and getting an in-process object from it to an apartment-specific function.
ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries from the current apartment.
ole32: Cache the address for the library's DllGetClassObject and DllCanUnloadNow in the OpenDll list entry.
ole32: Keep a list of the loaded dlls for each apartment.
ole32: In 16-bit OLE, LPOLESTR uses multibyte, not Unicode characters so make LoadTypeLib16 take an LPSTR instead of LPOLESTR.
ole32: Add tests for drag and drop functions.
ole32: Check for COM not being initialised and an invalid window handle being input to RegisterDragDrop.
ole32: Check the input hwnd is valid in RevokeDragDrop.
ole32: Don't release the registered drop targets in OleUninitialize.
ole32: Move declaration for FileMonikerImpl_DecomposePath from compobj_private.h to moniker.h.
ole32: Fix a hack which depended on the IID of the interface being marshaled
shell32: Return Unicode strings from all of the IShellFolder::GetDisplayNameOf functions in not running in Win9x mode.
msi: Provide UI action data for uncompressed files, not just compressed ones.
Rolf Kalbermatter (4):
notepad: Implement handling of page setup dialog parameters.
notepad: Fix a possible rounding error when storing the font point size to the registry.
notepad: Fix text label.
notepad: Improve printing considerably.
Stefan Dösinger (10):
wined3d: Add GL_APPLE_client_storage to our extension list.
wined3d: Use GL_APPLE_client_storage if available.
wined3d: Add D3DDEVCAPS3_* to the wined3d caps header.
wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
wined3d: Set WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD caps3 cap.
wined3d: Index buffer data is unsigned.
wined3d: Dirtify the shader and declaration states if the bound interface is destroyed.
d3d9: AddRef the device in IDirect3DVertexDeclaration9::AddRef.
d3d9: Fix the circular converted vertex declaration reference.
d3d9: Fix vertex decl test.
Stefan Leichter (1):
advapi32: Add some tests for RegDeleteTreeA.
Steven Edwards (1):
winecfg: Add a button for audio test.
Vit Hrachovy (1):
winecfg: Fix outdated Czech localization.
Vitaliy Margolen (2):
dinput: Set the event regardless of the queue state.
ntdll: Take size of the arena from the current pointer before advancing.
--
Alexandre Julliard
julliard(a)winehq.org
This is release 0.9.34 of Wine, a free implementation of Windows on Unix.
What's new in this release:
- Support for Xcursor.
- A range of fixes for various installers.
- New builtin xcopy tool.
- The usual assortment of Direct3D fixes.
- Lots of bug fixes.
Because of lags created by using mirrors, this message may reach you
before the release is available at the public sites. The sources will
be available from the following locations:
http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.34.tar.bz2http://prdownloads.sourceforge.net/wine/wine-0.9.34.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/site/download
You will find documentation on
http://www.winehq.org/site/documentation
You can also get the current source directly from the git or CVS
repositories. Check respectively http://www.winehq.org/site/git or
http://www.winehq.org/site/cvs for details.
If you fix something, please submit a patch; instructions on how to do
this can be found at http://www.winehq.org/site/sending_patches
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Changes since 0.9.33:
A C Hurst (1):
wined3d: Fix struct size calculation in EnumTextureFormats.
Alessandro Pignotti (3):
dplayx: Check for null pointer dereference in DP_FindPlayer.
dplayx: Corrected the way nameserver initializes the sessiondesc structure on broadcast request reply.
dplayx: Fixes the order of GUID initialization and storage.
Alexander Farber (1):
cmd: Enlarge max. length of PATH variable.
Alexandre Julliard (38):
dbghelp: Avoid some warnings on Solaris.
wldap32: Prefix option defines with WLDAP32 to avoid conflicts with system headers.
ntdll: Remove unnecessary pointers in fstab parsing on Solaris.
server: Use the common pattern for async I/O parameters in named pipe requests.
server: Grab the owner object of an APC while the APC is executing.
server: Make struct async into a real object, to keep it around while the APC is running.
server: Return the status from an async I/O APC call to the server.
server: Add an async_data_t structure to store parameters for async I/O requests.
setupapi: Add support for .inf files in utf-8 format.
server: Add support for storing an event to signal upon async I/O completion.
server: Notify the async object when the APC call completed.
server: Move the signalling of the completion event for NtRead/WriteFile to the server.
ws2_32: Move the signalling of the completion event to the server.
server: Move the signalling of the named pipe completion event to the server.
server: Use a standard async I/O event to signal directory changes.
winex11.drv: Relax the bitmap depth check in CreateBitmap to accept some compatible formats.
server: Add an open_file() function to the object operations.
server: Implemented the open_file method for named pipe and mailslot devices.
server: Create the named pipe and mailslot devices under \Device.
server: Don't enforce named pipes path format in ntdll, only in the server.
server: Don't enforce mailslots path format in ntdll, only in the server.
ntdll: Better support for NT path names in wine_nt_to_unix_file_name.
server: Implement the open_file method for mailslots.
server: Implement the open_file method for named pipes.
server: Print the callback function in the APC_ASYNC_IO trace.
kernel32: Fixed timeout calculation in WaitNamedPipe.
ntdll: Avoid overwriting the result of the async I/O callback in NtFsControlFile.
server: A named pipe wait can be satisfied by an idle pipe server too.
server: Always return STATUS_PENDING when an async I/O operation has been queued.
kernel32: Don't use the reserved argument of the APC routine callback.
server: Add support for queuing a user APC upon async I/O completion.
server: Remove the return value of the flush() method, it's not used.
Makefile: More portable invocation of ctags/etags.
ntdll: Ignore failure to open current directory, it's broken on Mac OS X.
kernel32: Make default behavior more consistent when AeDebug key is not present.
libwine: Hack to work around the Solaris dlopen() brain damage.
kernel32: Better default for dwActiveProcessorMask in GetSystemInfo.
Makefile: Try to force the makefile to be rebuilt with non-GNU make too.
Andrew Riedi (2):
winex11.drv: Add Xcursor support for 32 bit cursors.
dsound: Change a couple DPRINTF's to TRACE's
Andrew Talbot (45):
comcat: Declare some variables static and const.
comctl32: Replace inline static with static inline.
advapi32: Replace inline static with static inline.
kernel32: Replace inline static with static inline.
ntdll: Replace inline static with static inline.
user32: Replace inline static with static inline.
wined3d: Replace inline static with static inline.
winex11.drv: Replace inline static with static inline.
server: Replace inline static with static inline.
winebuild: Replace inline static with static inline.
wineps.drv: Replace inline static with static inline.
ddraw: Replace inline static with static inline.
dsound: Replace inline static with static inline.
msvcrt: Replace inline static with static inline.
dinput: Replace inline static with static inline.
setupapi: Replace inline static with static inline.
gdi32: Replace inline static with static inline.
comctl32: Constify some variables.
dbghelp: Replace inline static with static inline.
kernel32/tests: Replace inline static with static inline.
mlang/tests: Replace inline static with static inline.
msg711.acm: Replace inline static with static inline.
comctl32: Constify some variables.
msi: Replace inline static with static inline.
shell32: Replace inline static with static inline.
msvcrt/tests: Replace inline static with static inline.
ole32: Replace inline static with static inline.
oleaut32: Replace inline static with static inline.
rpcrt4: Replace inline static with static inline.
comctl32: Constify some variables.
comctl32: Constify some variables.
include: Replace inline static with static inline.
shlwapi: Replace inline static with static inline.
wintab32: Replace inline static with static inline.
wininet: Replace inline static with static inline.
winmm: Replace inline static with static inline.
ws2_32: Replace inline static with static inline.
comctl32: Constify some variables.
winelib: Replace inline static with static inline.
loader: Replace inline static with static inline.
secur32: Replace const pointer parameters with correct pointers to const.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Constify some variables.
comctl32: Cast-qual warnings fix.
Aric Stewart (3):
ole32: Rework storage with blockfiles to properly use ILockBytes interfaces.
Revert 7c35db07c35db0... msiexec: Use CommandLineToArgvW instead of process_args to reduce code duplication.
imm32: Change the default IME window to better reflect applications request.
Chris Robinson (15):
quartz: Hold a reference on a filter while sending data to it.
quartz: Release objects when pins fail to connect.
quartz: Disconnect pins when their filter is removed.
quartz: Release objects when they're no longer needed.
quartz: Don't delete critical sections before the filter's pins are done using them.
quartz: Don't redundantly set waveparser output pin data before it's created.
quartz: Fully disconnect the AsyncReader when released.
quartz: Make DSoundRender_Run start the playback buffer.
quartz: Implement volume and pan control for DSoundRenderer.
quartz: Store the current reference time with the PullPin.
quartz: Propogate transform filter errors upstream.
quartz: Return proper CLSID for parser filters.
quartz: Protect DSound buffer creation with a critical section lock.
winemp3: Clear stream buffers when the stream is reset.
quartz: Add filters using their names.
Clinton Stimpson (1):
riched20: Fix text replacement with text limit.
Damjan Jovanovic (2):
ws2_32: In some cases send should block until the entire buffer is sent.
ws2_32: WSASendTo should always re-enable the FD_WRITE event.
Detlef Riekenberg (7):
libs/wine: Use xstrdup to avoid duplicate code.
kernel32/tests: DuplicateTokenEx is not present on all platforms.
advapi32/tests: DuplicateTokenEx is not present on all platforms.
localspl/tests: Rename hXcv for special tests.
localspl/tests: Open the default Xcv-channel only once.
localspl/tests: Fix copy+paste bug.
winspool.drv: Do not cache the port names.
Dmitry Timoshkov (11):
winex11.drv: In the case requested glyphs do not present in the font fail gracefully instead of asserting.
msvcrt: Print FIXME on platforms where _except_handler3 is a stub.
user32: Avoid compiler specific code in the DefWindowProc test.
ole32: Move the storage signatures to the appropriate file that uses them.
riched20: Add a test that shows that under Win9x RichEdit20W windows are not unicode, but always expect to see unicode input.
user32: WM_GETTEXT message converters have to 0-terminate output buffer if there is enough space even if there is no text to convert.
riched20: Split unicode and ansi window procs, handle messages depending on the unicode flag.
gdi32: Implement GdiGetCodePage.
gdi32: Make the EMF driver return sane NUMCOLORS value.
include: Add some API prototypes to appropriate header files, fix some prototypes.
shlwapi: Match shlwapi wrappers to MSDN descriptions.
Erich Hoover (1):
wined3d: Fix LockRect memory location calculation for WINED3DFMT_DXT*.
Fabian Bieler (8):
wined3d: Implement linear fog with pixel shader.
wined3d: Remove fog coordinate clamping in the vertex shader.
d3d9/tests: Add test for fog with shader.
wined3d: Implemented bump map transform for texbem in GLSL with native signed textures.
wined3d: Fix glsl texbem instruction for projective textures.
wined3d: Fix arb texbem instruction for projective textures.
d3d9/tests: Add test for texbem instruction.
wined3d: Implement support for projective textures in ps 2.0 and later.
Felix Nawothnig (3):
wined3d: Only disable GL_TEXTURE_CUBE_MAP_ARB if supported.
wined3d: Fix broken ERR() message.
wined3d: Use GL_TEXTURE_2D for dummy textures.
Francois Gouget (5):
setupapi: Fix InstallCatalog()'s calling convention.
netapi32/tests: Add a missing '\n' to a trace().
gdi32: Remove a space before '\n' in a trace.
cmd: Spelling fix.
Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll.
Gabriel Gambetta (1):
ntdll: Add Uruguayan Summer Time timezone.
Gerald Pfeifer (1):
configure: Add -lXau to NASLIBS if applicable to obtain XauGetBestAuthByAddr and XauDisposeAuth.
Hagop Hagopian (2):
comctl32: tab: Added message sequence tests for the tab control.
comctl32: tab: Minor bug fixes in the curSel and curFocus getters and setters.
Hans Leidekker (9):
wine.inf: Register an 'install' verb with the shell for .inf files.
wine.inf: Open/print .rtf files with wordpad.
wine.inf: Add cabinet.dll to the list of fake dlls.
setupapi: Add a stub implementation for InstallCatalog.
userenv: Add stub implementations for {Register, Unregister}GPNotification.
mpr: Fix buffer size calculation in WNetGetUniversalNameW.
mpr: Add a stub implementation for WNetGetUniversalNameA.
ntdll: Fully initialize the security descriptor returned from RtlSelfRelativeToAbsoluteSD.
shell32: Add a stub implementation for SHPathPrepareForWrite{A, W}.
Huw Davies (3):
user32: Use a window's icon in preference to its class icon.
winex11.drv: Rename a local variable to avoid confusion with a global.
winex11.drv: Delete the tile pixmap whenever the drawable is changed.
Jacek Caban (9):
spoolss: Added RevertToPrinterSelf stub implementation.
advapi: Constify argument of StartServiceCtrlDispatcher[AW] functions.
advapi: Improve SetEntriesInAclW stub.
spoolsv: Added spoolsv.exe.
wine.inf: Register Spooler service.
wine.inf: Code clean up.
mshtml: Added DispHTMLDocument dispinterface declaration.
mshtml: Added DIID_DispHTMLDocument to QueryInterface.
winnt.h: Added activation context structures declarations.
James Hawkins (8):
setupapi: Add missing SetupCopyOEMInf flags.
setupapi: Add several tests for SetupCopyOEMInf, with fixes so the tests don't crash.
setupapi: Handle the SP_COPY_NOOVERWRITE flag.
setupapi: Don't allow relative paths in SetupCopyOEMInf.
setupapi: The Inf file should be copied regardless of the destination buffer, with tests.
setupapi: Correct the Inf output position.
setupapi: SetLastError to ERROR_SUCCESS on success.
msi: Load the folder property if available and requested.
Jan Zerebecki (1):
wined3d: Print lastpixel state fixme only once.
Jason Edmeades (18):
cmd.exe: Add support for DIR /D.
cmd.exe: Add support for dir /-C.
cmd.exe: Add support for DIRCMD and sequential qualifier processing.
cmd.exe: Add support for dir /A filtering.
cmd.exe: Add errorlevel support for DIR command.
cmd.exe: Only write 'bytes free' message if a file was displayed during dir.
Basic implementation of xcopy.
xcopy: Add support for /W (pause).
xcopy: Add support for /T (no copy).
xcopy: Prompt when overwriting files, add /Y and /-Y support.
xcopy: Add support for COPYCMD override and fix /-y.
xcopy: Add support for /N (shortname copy).
xcopy: Add support for /U (target must exist).
xcopy: Add support for /R (Replace read only files).
xcopy: Add support for /H (Hidden/System).
xcopy: Add support for /C (Continue if errors).
xcopy: Add support for /P (Prompt).
xcopy: Add support for xcopy /A and /M (archive copies).
Joris Huizer (2):
amstream: sign-compare fixes.
advpack: sign-compare fix.
Juan Lang (2):
advapi32: Implement RegGetKeySecurity with NtQuerySecurityObject.
wine.inf: Move fake rundll32 to the system directory.
Kai Blin (13):
netapi32: Downgrade a FIXME and an ERR to a trace to not clutter test output on handled error conditions.
netapi32: fix a comment.
netapi32: Get rid of an ugly macro definition only used once.
netapi32: Downgrade another WARN and ERR to a TRACE.
netapi32: Remove another macro, replace by more readable functions.
netapi32: Downgrade more ERRs to TRACEs.
netapi32/tests: Use skip when skipping tests.
netapi32: Add test for adding/deleting users.
netapi32/test: Test the username and password length limits.
netapi32: Implement NetUserAdd with a dummy user database.
netapi32: Implement NetUserDel.
netapi32: Implement NetUserChangePassword.
netapi32/tests: Make NetGetUserInfo checks language independent.
Kanit Therdsteerasukdi (1):
comctl32: datetime: Reject invalid flags in DTM_SETSYSTEMTIME.
Ken Thomases (1):
Revert "gdi32: Disable the freetype mmap sharing on Mac OS.".
Laurent Vromman (1):
gdi32: WidenPath partial implementation.
Louis Lenders (4):
kernel32: Print a fixme only once.
shell32: Define avi resource #163.
kernel32: Add stub for AttachConsole.
ntdll: Add NtAreMappedFilesTheSame stub.
Marcin Grześkowiak (1):
user32: Use charset of currently selected font in DrawTextExA.
Michael Stefaniuc (1):
quartz: Fix typo that produced an empty if-statement.
Mikołaj Zalewski (14):
browseui: Remove a test with a wrong pointer.
shell32/explorer: Support different structure sizes in Shell_NotifyIcon.
shell32: Don't free user supplied data in Shell_NotifyIcon if GetIconInfo failed.
shell32: Add some more notify icon defines.
user32: tests: Using DefWindowProcA with RegisterClassW works under Windows.
comctl32: CreateToolbarEx should send TB_SETBITMAPSIZE twice.
comctl32: toolbar: The default button size is 16x16.
comctl32: toolbar: Test standard buttons size.
comctl32: toolbar: We shouldn't try to resize standard bitmaps.
shell32: autocomplete: Don't use sel uninitialized.
user32: combobox: The text area height should be font_height+4.
wrc: Add HTML resources support to wrc --verify-translation.
wrc: Change the format of the output of "wrc --verify-translation".
comctl32: toolbar: TB_HIDEBUTTON and TB_MOVEBUTTON shouldn't force a recalc.
Nicolas Delcros (1):
gdi32: Don't write a metafile record for escapes that require output.
Paul Vriens (18):
kernel32/tests: Use skip.
wininet/ftp: Simplify FTP_FtpGetFileW a bit.
wininet/ftp: Move a definition in FTP_FtpFindFirstFileW (Coverity).
wininet/tests: Expose a problem with FtpGetFile.
wininet/ftp: Remove unneeded check.
wininet/ftp: Fix potential memory leak.
netapi32/tests: Use LoadLibrary where needed and skip.
shlwapi/path: Proper use of GetProcessHeap().
oleaut32/tests: Use skip.
kernel32/profile: Rename a test.
kernel32/profile: Move GetPrivateProfileSectionA to its own test.
kernel32/profile: Add a few NULL checks (Coverity).
kernel32/profile: Some parameter tests for GetPrivateProfileSectionA.
advapi32/tests: Use skip.
advapi32/tests: Move check for ERROR_CALL_NOT_IMPLEMENTED to the first call.
advapi32/tests: Add check to see if LookupAccountNameA is implemented.
advapi32/tests: Add check to see if ImpersonateSelf is implemented.
advapi32/tests: Add check to see if SetEntriesInAclW is implemented.
Phil Costin (1):
wined3d: Ensure all states affected by a change in render_offscreen are marked dirty in ActivateContext.
Piotr Caban (2):
comctl32: Fixed TreeView_EndEditLabelNow crash.
comctl32: Set label width after editting.
Rob Shearman (32):
ole32: Add warnings for failures in the structured storage stream functions.
ole32: Implement TYMED_FILE for STGMEDIUM marshaling and unmarshaling.
include: Fix the byte-order in the definition of the USER_MARSHAL_CB_SIGNATURE macro.
oleaut32: Add some tests for user marshaling a VT_UNKNOWN variant.
oleaut32: Make the VARIANT_UserUnmarshal tests work on XP.
oleaut32: Clear the input pvar structure in VARIANT_UserUnmarshal to free the data instead of just initializing.
ole32: Add a test for StgStreamImpl_SetSize with a non-zero HighPart for the size.
atl: Add support for the pMapEntries parameter to AtlModuleUpdateRegistryFromResourceD.
atl: Add support for the registrar parameter of AtlModuleUpdateRegistryFromResourceD.
winedump: Fix the output for Makefile.in with respect to the dependencies line to match that required by the build system.
ole32: The 16-bit version of CoDisconnectObject is not compatible with the 32-bit version, so create a separate stub for the former.
rpcrt4: Implement associations which are intermediary objects that track the relationship between the client and a given endpoint on the server.
rpcrt4: Make some parameters of non-exported functions const.
ole32: Add a stubbed out implementation of IClientSecurity to the proxy manager.
ole32: Add the OXID_INFO structure to dcom.idl.
ole32: Generate OXID_INFO in the stub manager.
rpcrt4: Retrieve the maximum token length from the security provider rather than using a hardcoded and rather small limit.
rpcrt4: Call InitializeSecurityContext from only one function.
rpcrt4: Call CompleteAuthToken if InitializeSecurityContext returned a code that says it should be called.
rpcrt4: Use the correct authorization trailer length using information from the security provider.
ole32: Handle NULL sub-objects correctly in the STGMEDIUM user marshaling functions so that no further data in marshaled or unmarshaled.
ole32: Add documentation for CreateBindCtx, BindMoniker, GetRunningObjectTable and OleRun.
ole32: Add documentation for CoGetClassObject and GetClassFile.
ole32: Move GetClassFile to moniker.c and move OleRun to ole2.c.
ole32: Register the ProgID for the class and file monikers.
ole32: Pass the OXID info to RPC_CreateClientChannel and use this to pass the server process ID to channel hooks.
ole32: Add tests for the standard marshaler's implementation of IClientSecurity.
ole32: Do a case-insensitive comparison in the count_moniker_matches in the moniker tests as Win9x marshals an all upper-case file name for file monikers.
ole32: Display the testname for the test for display name in test_moniker.
ole32: Add some more tests for MkParseDisplayName.
ole32: Implement MkParseDisplayName.
rpcrt4: Fixing the using of the auth_len values the wrong way round - PKT_PRIVACY implies the packet will be encrypted, not just signed.
Stefan Dösinger (13):
wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d.
wined3d: Fix client gl unit selection.
wined3d: Remove some old stuff.
wined3d: Activate a context before doing opengl calls.
wined3d: Store an array of contexts in the swapchain.
wined3d: Add GL_ATI_envmap_bumpmap to our gl extension header.
wined3d: Support GL_ATI_envmap_bumpmap for D3DFMT_V8U8.
wined3d: Store the pixel format in the texture.
wined3d: General signed format correction without native signed formats.
wined3d: Handle input modifiers in texcrd with arb shaders.
wined3d: Implement bem shader instruction.
wined3d: Disable texture coordinate arrays on the correct unit.
ddraw: When changing the back buffers also update the render target.
Vitaly Budovski (1):
wined3d: Check for float texture formats correctly.
--
Alexandre Julliard
julliard(a)winehq.org