Problem with allocate_large_block

Questions about Wine on Linux
Post Reply
mhanft
Level 2
Level 2
Posts: 10
Joined: Fri Sep 15, 2017 1:46 pm

Problem with allocate_large_block

Post by mhanft » Sun Nov 08, 2020 12:48 pm

Hi,

for the last 6 years, I managed to run the German tax software ("ELSTER" with the "ERiC" DLLs) - Windows version - with WINE on Linux (and Mac).

During the ongoing upgrade from ERiC 31 to ERiC 32, my software just terminates without any message. With some debugging, WINE says "unknwon reason", and with some very more debugging (WINEDEBUG=+all or nearly all), I guess the "faulty" position where the crash happens is

Code: Select all

0009:Call ucrtbase.wcsrtombs(4affc033,0032ecf4,1fffffed,0032 ece0) ret=0083be51
0009:Ret ucrtbase.wcsrtombs() retval=00000001 ret=0083be51
0009:Call ucrtbase.malloc(40000000) ret=0083d3ce
0009:Call ntdll.RtlAllocateHeap(00cd0000,00000000,40000000) ret=7d263918
0009:warn:heap:allocate_large_block Could not allocate block for 40000000 bytes
0009:trace:heap:RtlAllocateHeap (0xcd0000,70000062,40000000): returning (nil)
0009:Ret ntdll.RtlAllocateHeap() retval=00000000 ret=7d263918
0009:Ret ucrtbase.malloc() retval=00000000 ret=0083d3ce
0009:Call ucrtbase._callnewh(40000000) ret=0083d3c1
0009:Ret ucrtbase._callnewh() retval=00000000 ret=0083d3c1
0009:Call ucrtbase._CxxThrowException(0032ec88,008d0c34) ret=0083e56a
0009:Call KERNEL32.RaiseException(e06d7363,00000001,00000003 ,0032ec20) ret=7d248071
0009:Call ntdll.memcpy(0032eb70,0032ec20,0000000c) ret=7b03399d
0009:Ret ntdll.memcpy() retval=0032eb70 ret=7b03399d
0009:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b0339ac ip=7b0339ac tid=0009
"allocate_large_block" is not called by the old ERiC 31 version, but is called by the new ERiC 32 version. Since I believe that this function is rather a WINE than a Windows function, I cannot blame the ERiC programmers (even though they obviously programmed something completely different than before).

If I can't find the problem, I'll lose my Linux and Mac users next April (when the use of ERiC 31 will not be allowed any more).

Any thoughts for further debugging? Or even a solution to this? ;)

Thanks in advance,

-Matt

PS: If someone wants to try out or investigate further himself, I have put the complete log files on https://www.hanft.de/eric/test3132.zip and a test program on https://www.hanft.de/eric/TestEricApi.zip (start with "wine TestEricApi" after renamig the desired ERiC version from ERiC31 resp. ERiC32 to ERiC).

Rokolell
Level 1
Level 1
Posts: 6
Joined: Tue Jan 05, 2021 7:11 am

Re: Problem with allocate_large_block

Post by Rokolell » Thu Feb 11, 2021 5:26 pm

Hey,
I'd like to take a look at this because the problem is also present in "Wiso Steuer: 2020". Did you get any further with this since you created this post?

~R.

Rokolell
Level 1
Level 1
Posts: 6
Joined: Tue Jan 05, 2021 7:11 am

Re: Problem with allocate_large_block

Post by Rokolell » Fri Feb 19, 2021 10:53 am

Cause for this problem found: https://bugs.winehq.org/show_bug.cgi?id=50698

Post Reply