On 28-9-2019 16:05, Vlad Khorsun wrote:
28.09.2019 15:02, Mark Rotteveel пишет:
On 21-9-2019 21:30, Vlad Khorsun wrote:
21.09.2019 17:22, Mark Rotteveel wrote:
In the latest snapshot build (4.0.0.1614) for Windows 64 bit, the
fbclient.dll is broken (I haven't checked Windows 32 bit). The
library fails to load with a "A dynamic link library (DLL)
initialization routine failed." error.
Can't reproduce, more details need.
isql run from the folder were snapshot
(Firebird-4.0.0.1614-0_x64.7z) was unpacked
with no problem. PE show that isql load fbclient.dll from the same
folder.
I installed the latest snapshot (Firebird-4.0.0.1617-0_x64), and the
problem remains.
I have no problem using FlameRobin x64 with fbclient x64 from
snapshot in the same folder.
Which Windows version are you using? I'm using Windows 10 version 1903
(OS Build 18362.356).
I have no idea what to look for. I looked with procmon, and don't
really notice anything weird, except that after loading fbclient and
what looks like initializing winsock, it calls WerFault.exe
Does WER creates some report with description of the issue ?
Source
flamerobin.exe
Summary
Stopped working
Date
28-9-2019 13:48
Status
Report sent
Description
Faulting Application Path: C:\Program Files\FlameRobin (x64)\flamerobin.exe
Problem signature
Problem Event Name: APPCRASH
Application Name: flamerobin.exe
Application Version: 0.9.3.0
Application Timestamp: 586d14c6
Fault Module Name: fbclient.dll
Fault Module Version: 4.0.0.1617
Fault Module Timestamp: 5d8f31fa
Exception Code: c0000005
Exception Offset: 0000000000001071
OS Version: 10.0.18362.2.0.0.256.48
Locale ID: 1033
Additional Information 1: 66c0
Additional Information 2: 66c013927f3b35b0f4b962f6e726019e
Additional Information 3: a07a
Additional Information 4: a07a1164b83ba017b7712185ca2cbc84
Extra information about the problem
Bucket ID: 86665bec7d64a4a796bd4810c0dd414e (1638545076225130830)
and then tries to find gds32.dll.
Which instance of fbclient it loaded ?
I have made multiple attempts, with fbclient.dll in the flamerobin
folder, in %windir%\System32 and with the path pointing to the Firebird
snapshot. In all cases that was the fbclient.dll from 4.0.0.1617_x64. In
all cases it loads fbclient.dll, something fails and then it continues
to try gds32.dll (which doesn't exist on my system).
Comparing procmon logging from isql.exe and flamerobin.exe, I don't
really see anything that jumps out. Comparing against flamerobin using
fbclient 4.0.0.1575 (the last version on my machine that works), I
just notice that the divergence starts just after the time that the
HKLM\System\CurrentControlSet\control\NetworkProvider\ProviderOrder
registry key is queried and before fbclient.dll attempts to read
firebird.conf (this doesn't happen with the 4.0.0.1617 dll).
I have made multiple attempts, with fbclient.dll in the flamerobin
folder, in %windir%\System32 and with the path pointing to the
Firebird snapshot.
Given 4.0.0.1575 works fine, and I first noticed the problem with
4.0.0.1614, the problem is somewhere between
https://github.com/FirebirdSQL/firebird/commit/931ebc16dbfa2717d27db6873fc00da06aa14fac
and
https://github.com/FirebirdSQL/firebird/commit/f012089937dd21523742ce22dc1fb8cd1c50d761
Notable changes between those commits are the introduction of re2 and
int128.
Given Flamerobin (and Jaybird) use the old C-API, is it possible
something is broken with the old C-api, but not with the OO-API?
I'm not found such changes. Also, note, it works for me.
Is it not clear if isql runs on your machine, btw
isql works, that is why I said that I compared procmon logging from
isql.exe and flamerobin.exe.
Mark
--
Mark Rotteveel
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel