| 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.bz2 |
| http://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@winehq.org |