WineHQ
Bug Tracking Database – Bug 31487

 Bugzilla

 

Last modified: 2021-02-20 13:29:29 UTC  

Multiple applications and installers crash on unimplemented function KERNEL32.dll.InitOnceExecuteOnce (MS Office 2013, Windows Live Essentials 2012, .NET Framework 4.5, Skydrive, Adobe Lightroom, WinRT/ARM Applications)

Bug 31487 - Multiple applications and installers crash on unimplemented function KERNEL32.dll.InitOnceExecuteOnce (MS Office 2013, Windows Live Essentials 2012, .NET Framework 4.5, Skydrive, Adobe Lightroom, WinRT/ARM Applications)
Multiple applications and installers crash on unimplemented function KERNEL32...
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: kernel32
1.5.11
x86-64 Linux
: P2 normal
: ---
Assigned To: Mr. Bugs
https://web.archive.org/web/201208110...
: download, Installer, patch
: 31468 32755 33039 33403 33875 33995 34309 34562 34629 (view as bug list)
Depends on:
Blocks: 31349 32766 32768
  Show dependency tree
 
Reported: 2012-08-17 15:44 UTC by A Wine user
Modified: 2021-02-20 13:29 UTC (History)
24 users (show)

See Also:
Regression SHA1:
Fixed by SHA1: 1992f5005c9765bbf648ac884c8a7f9bfdaa929d
Distribution: ---
Staged patchset:


Attachments
Implementation synced to Wine 1.5.16 (3.10 KB, patch)
2012-10-28 07:06 UTC, Detlef Riekenberg
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description A Wine user 2012-08-17 15:44:57 UTC
The newest Windows Essentials (formerly Windows Live Essentials) installer crashes on start due to this unimplemented function:

wine: Call from 0x7bc4c710 to unimplemented function KERNEL32.dll.InitOnceExecuteOnce, aborting
wine: Unimplemented function KERNEL32.dll.InitOnceExecuteOnce called at address 0x7bc4c710 (thread 0009), starting debugger...
Comment 1 Anastasius Focht 2012-10-06 13:48:55 UTC
Hello,

confirming, .NET Framework 4.5 (RTM, final) installer needs this too.

$ wine --version
wine-1.5.14-182-ged97683

Regards
Comment 2 Nikolay Sivov 2012-10-07 00:00:42 UTC
You could try a couple of patches from my last attempt:

http://www.winehq.org/pipermail/wine-patches/2012-July/116504.html
http://www.winehq.org/pipermail/wine-patches/2012-July/116505.html

It's Linux only solution.
Comment 3 A Wine user 2012-10-20 23:23:29 UTC
(In reply to comment #2)
> You could try a couple of patches from my last attempt:
> 
> http://www.winehq.org/pipermail/wine-patches/2012-July/116504.html
> http://www.winehq.org/pipermail/wine-patches/2012-July/116505.html
> 
> It's Linux only solution.

Works fine for Windows Essentials. The installer can be run now (but fails later).
Comment 4 Detlef Riekenberg 2012-10-28 07:06:33 UTC
Created attachment 42297 [details]
Implementation synced to Wine 1.5.16

I updated the code from Nicolay for Wine-1.5.16
(Only the implementation, but not the tests).

Disclaimer:
I did not read the comments to the original patch,
so i have no idea, what was wrong with the code.


KERNEL32.dll.InitOnceExecuteOnce is also needed for the Office 2013 installer.
ba4d28bd03f777a1caaa662751d1b23085ada527 *professionalplus_en-us_x86.exe
(Filesize ~650MB: 654858752 byte)

-- 
By by ... Detlef
Comment 5 André Z. 2013-01-19 12:16:05 UTC
*** Bug 32755 has been marked as a duplicate of this bug. ***
Comment 6 André Z. 2013-01-19 12:16:55 UTC
putty_arm for jailbroken WinRT needs that, too
Comment 7 David Korth 2013-01-19 12:36:19 UTC
This function appears to be used by the MSVC 2012 runtime, so anything compiled with Visual C++ 2012 will not run on Wine until InitOnceExecuteOnce() is implemented.
Comment 8 André Z. 2013-02-12 16:16:29 UTC
@Detlef:
Only reply i found was:
http://www.winehq.org/pipermail/wine-devel/2012-July/096399.html

@Nikolay:
Could you please have a look at this again?
Nearly every Win32/ARM app wants that (compiled by VS 2012)
Comment 9 Nikolay Sivov 2013-02-12 21:31:44 UTC
(In reply to comment #8)
> @Detlef:
> Only reply i found was:
> http://www.winehq.org/pipermail/wine-devel/2012-July/096399.html
> 
> @Nikolay:
> Could you please have a look at this again?
> Nearly every Win32/ARM app wants that (compiled by VS 2012)

The part of this comment about generic implementation is what's important. I don't know how to do that.
Comment 10 André Z. 2013-02-13 14:28:45 UTC
Maybe this depends on bug 30164
Comment 11 Bruno Jesus 2013-02-22 11:11:20 UTC
*** Bug 33039 has been marked as a duplicate of this bug. ***
Comment 12 nick 2013-03-20 12:01:41 UTC
Tried SourceTreeSetup.exe (http://www.sourcetreeapp.com/download/) with wine 1.5.26 and the installer failed on this missing function.
Comment 13 Hesham Saleh 2013-04-15 05:25:04 UTC
Here is another try of SourceTreeSetup.exe with wine-1.5.28.
Comment 14 Bruno Jesus 2013-04-16 07:17:40 UTC
*** Bug 33403 has been marked as a duplicate of this bug. ***
Comment 15 Anastasius Focht 2013-04-24 16:30:15 UTC
*** Bug 31468 has been marked as a duplicate of this bug. ***
Comment 16 Anastasius Focht 2013-04-28 06:11:47 UTC
Hello folks,

"Classic Shell/Classic Start Menu" also needs this now that bug 32878 is resolved.

Last comment: http://www.winehq.org/pipermail/wine-devel/2012-July/096399.html

--- quote ---
It's supposed to return an NTSTATUS, not a boolean. Also you have to always return the context, and you should try to do a generic implementation first.
--- quote ---

- atomic compare and exchange ops -> InterlockedCompareExchange
- init race lost and need to wait for winning thread? -> small sleep + loop again (avoid more waitable objects to block/release waiters)

MSDN article about the usage patterns: https://blogs.msdn.com/b/oldnewthing/archive/2011/04/08/10151258.aspx

This blocks quite a number of applications... 

$ wine --version
wine-1.5.29-38-g8e4317c

Regards
Comment 17 Nikolay Sivov 2013-04-28 09:51:11 UTC
I think the main thing to fix was about generic implementation, which I failed to provide.
Comment 18 André Z. 2013-04-28 10:05:24 UTC
(In reply to comment #17)
> I think the main thing to fix was about generic implementation, which I failed
> to provide.

I guess that's what AF means with
- atomic compare and exchange ops -> InterlockedCompareExchange
Comment 19 Artem S. Tashkinov 2013-05-07 03:28:57 UTC
Kepler Bios Editor v1.1.rar is also affected by this issue.
Comment 20 romulasry 2013-05-10 16:53:04 UTC
http://bugs.winehq.org/show_bug.cgi?id=31349 is also affected by this issue.
Comment 21 romulasry 2013-05-10 16:55:56 UTC
InitOnceExecuteOnce function MSDN:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms683493(v=vs.85).aspx

This should be a bug for 1.6 wine...
Comment 22 Bruno Jesus 2013-06-24 07:42:43 UTC
*** Bug 33875 has been marked as a duplicate of this bug. ***
Comment 23 Dan Kegel 2013-07-09 13:10:24 UTC
*** Bug 33995 has been marked as a duplicate of this bug. ***
Comment 24 Bruno Jesus 2013-08-20 18:43:23 UTC
*** Bug 34309 has been marked as a duplicate of this bug. ***
Comment 25 Austin English 2013-08-29 14:07:37 UTC
Fixed by http://source.winehq.org/git/wine.git/commitdiff/1992f5005c9765bbf648ac884c8a7f9bfdaa929d

Windows Essentials now fails on missing:
KERNEL32.dll.CreateHardLinkTransactedW

I'll file a new bug for it.
Comment 26 Bruno Jesus 2013-08-29 14:13:00 UTC
(In reply to comment #25)
> Windows Essentials now fails on missing:
> KERNEL32.dll.CreateHardLinkTransactedW
> 
> I'll file a new bug for it.

That is bug 32229.
Comment 27 Alexandre Julliard 2013-08-30 13:05:55 UTC
Closing bugs fixed in 1.7.1.
Comment 28 Anastasius Focht 2013-09-21 05:25:34 UTC
*** Bug 34562 has been marked as a duplicate of this bug. ***
Comment 29 Bruno Jesus 2013-09-30 07:19:58 UTC
*** Bug 34629 has been marked as a duplicate of this bug. ***
Comment 30 Alexandre Julliard 2013-11-15 13:40:26 UTC
Removing 1.6.x milestone from bugs included in 1.6.1.


Privacy Policy
If you have a privacy inquiry regarding this site, please write to [email protected]

Hosted By CodeWeavers