Bug 4387 - Provide a current Windows build (>=3.17.6)
Summary: Provide a current Windows build (>=3.17.6)
Status: RESOLVED FIXED
Alias: None
Product: Claws Mail (Windows)
Classification: Unclassified
Component: default (show other bugs)
Version: 3.17.7
Hardware: PC Windows 10
: P3 enhancement
Assignee: users
URL:
Depends on:
Blocks:
 
Reported: 2020-09-24 08:58 UTC by Bernhard E. Reiter
Modified: 2021-03-31 20:10 UTC (History)
4 users (show)

See Also:


Attachments
1/9 Update instructions for building (1.52 KB, patch)
2020-10-15 14:51 UTC, Jonathan Boeing
Details | Diff
2/9 Fix building cyrus-sasl (87.50 KB, patch)
2020-10-15 14:52 UTC, Jonathan Boeing
Details | Diff
3/9 Fix building cyrus-sasl (28.47 KB, patch)
2020-10-15 14:53 UTC, Jonathan Boeing
Details | Diff
4/9 Fix building ytnef (2.60 KB, patch)
2020-10-15 14:53 UTC, Jonathan Boeing
Details | Diff
5/9 Fix building atk (7.26 KB, patch)
2020-10-15 14:54 UTC, Jonathan Boeing
Details | Diff
6/9 Fix building harfbuzz (688 bytes, patch)
2020-10-15 14:54 UTC, Jonathan Boeing
Details | Diff
7/9 Fix building libetpan (26.21 KB, patch)
2020-10-15 14:55 UTC, Jonathan Boeing
Details | Diff
8/9 Fix building NSIS installer (1.31 KB, patch)
2020-10-15 14:56 UTC, Jonathan Boeing
Details | Diff
9/9 Fix 'make dist' (850 bytes, patch)
2020-10-15 14:56 UTC, Jonathan Boeing
Details | Diff
set2 1/13 cleanup make invocation (838 bytes, patch)
2020-10-23 19:04 UTC, Jonathan Boeing
Details | Diff
set2 2/13 update gnutls build (7.74 KB, patch)
2020-10-23 19:05 UTC, Jonathan Boeing
Details | Diff
set2 3/13 update libffi (2.21 KB, patch)
2020-10-23 19:06 UTC, Jonathan Boeing
Details | Diff
set2 4/13 parallel building (1.63 KB, patch)
2020-10-23 19:06 UTC, Jonathan Boeing
Details | Diff
set2 5/13 update meson building (3.28 KB, patch)
2020-10-23 19:07 UTC, Jonathan Boeing
Details | Diff
set2 6/13 update glib (8.30 KB, patch)
2020-10-23 19:07 UTC, Jonathan Boeing
Details | Diff
set2 7/13 update atk build (3.64 KB, patch)
2020-10-23 19:08 UTC, Jonathan Boeing
Details | Diff
set2 8/13 update cairo and pixman (13.32 KB, patch)
2020-10-23 19:08 UTC, Jonathan Boeing
Details | Diff
set2 9/13 update glib-networking (3.75 KB, patch)
2020-10-23 19:09 UTC, Jonathan Boeing
Details | Diff
set2 10/13 update freetype (895 bytes, patch)
2020-10-23 19:09 UTC, Jonathan Boeing
Details | Diff
set2 11/13 update gdk-pixbuf (5.24 KB, patch)
2020-10-23 19:10 UTC, Jonathan Boeing
Details | Diff
set2 12/13 update pango (3.19 KB, patch)
2020-10-23 19:10 UTC, Jonathan Boeing
Details | Diff
set2 13/13 add fribidi (4.75 KB, patch)
2020-10-23 19:11 UTC, Jonathan Boeing
Details | Diff
Revise and expand on patch set2 (22.81 KB, application/octet-stream)
2020-11-08 23:12 UTC, Jonathan Boeing
Details
Replace close with fclose (1.06 KB, patch)
2021-02-26 23:32 UTC, Jonathan Boeing
Details | Diff
Add WIN32 define for litehtml (1.73 KB, patch)
2021-02-26 23:39 UTC, Jonathan Boeing
Details | Diff

Description Bernhard E. Reiter 2020-09-24 08:58:35 UTC
The Windows download at https://www.claws-mail.org/win32/
as of today (2020-09-24) only offers claws-mail-3.17.4-1-32bit.exe
(based on the release of July 2019).

A potentially large user base can be targeted with an up to date version
for MS windows. (This is what I've selected severity "major".)

What would it take to provide a windows build with the the offical webpage?


Related reports:
* https://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=4350
  (Update needed to Windows CA bundle) also mentions missing current version

* https://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=4251
  (SNI support added in v3.17.3 is missing from Windows build of v3.17.4)
  highlights that a new release is likely to be important for Gmail users.

* Mailinglist
  Thread in March 2020 asks for Windows port, it seemed @wwp was working on it
  with @ticho offering help. 
  https://lists.claws-mail.org/pipermail/users/2020-March/025681.html
Comment 1 Bernhard E. Reiter 2020-09-24 17:50:33 UTC
Another Claws release is to be expected soon.
The task of creating a new windows binary is then triggered again.
(Learned in personal communication.)
Comment 2 Phil Gunhouse 2020-09-26 16:25:10 UTC
Hi Bernhard (anyone else), please can you clarify your later comment.

Do you understand that the a new Windows build will likely occur shortly after the next core release, and progress is delayed waiting on that release, or that the new release will instead reset any work done so far and add further delay?

Thanks,
Comment 3 Bernhard E. Reiter 2020-09-29 09:22:01 UTC
Hi Phil,

merely wanted to say that the new windows build will most likely be
a build of the new claws-mail version, which meanwhile 
has been released as 3.17.7 on 2020-09-28 (yesterday).

https://lists.claws-mail.org/pipermail/users/2020-September/026971.html

So now (as far as I understood) internally there will a ping to pickup
the work to continue building a new windows binary.

Also I believe that the work will be seen in the following git repository
https://git.claws-mail.org/?p=claws-win32-installer.git;a=summary
and what can be done is to either 
a) offer to do some of the work
b) help financially (by donating towards the windows port)
Comment 4 Paul 2020-09-29 09:44:27 UTC
Just to be clear:

"most likely" should read "possibly"

"a ping" means a conversation may be held

"b) help financially (by donating towards the windows port)"
A donation is not made to any single part of the project, but to the project as a whole. Donations are for work done, not to influence what might be done. (That is not to say that they will have zero influence, they may or they may not influence decisions, but they can't be made simply in expectation of having an influence on some future work.)
Comment 5 Bernhard E. Reiter 2020-09-29 09:58:20 UTC
@Paul, thanks for the clarifications.
(I've noticed that on https://www.claws-mail.org/sponsors.php a number of people donated "towards the windows port" and I think it is a good custom if someone is donating to communicate a main reason why they are interested in Claws.)
Comment 6 Paul 2020-09-29 10:16:32 UTC
That reminds me that I need to update that page. It's impossible to maintain.
Comment 7 Bernhard E. Reiter 2020-09-29 13:09:03 UTC
Re: Sponsors Page: If you decide to keep the thanks, my suggestion is to group it by time (year) and optionally by amount.
Comment 8 Bernhard E. Reiter 2020-10-13 11:30:52 UTC
@Paul, if the conversation would be held about building a new installer for windows inside the Claws Dev people,  it would be cool if this ticket would
get an update.

To avoid more people asking: Any idea about the timeframe about when the conversation maybe taking place? Is it more like 2 weeks or 2 months?
Comment 9 Paul 2020-10-13 11:47:57 UTC
I can't give any deinite answer on when it will be done. I tried myself, but my machine is too low-spec to be able to complete the build. And, of course, I can't coerce anyone else into doing it. So, we have to wait until those people who have expressed an interest in doing it to actually do it, or for someone else to express such an interest.

That conversation which you cite has taken place, more than once. But conversations don't build software.
Comment 10 Bernhard E. Reiter 2020-10-13 11:59:33 UTC
@Paul, again thanks for the answer.

I'll might be able to find someone to do some work.

To make this easier, it is helpful to have the best available instructions
and known possible steps that still need completing.

I saw that you have committed something to https://git.claws-mail.org/?p=claws-win32-installer.git;a=summary how complete and up-to-date are the instructions there?

What kind of machine is needed? (As idea: would sponsoring you a machine help at this point?)
Comment 11 Bernhard E. Reiter 2020-10-13 12:00:40 UTC
Are people that are expressing interest willing to expose themselves here?
(Maybe we can work together to get something done.)
Comment 12 wwp 2020-10-13 13:34:01 UTC
I cannot afford spending time on a Windows release currently, not sure when I will be able or even if I will ever in a reasonable delay. IOW I cannot conduct Windows releases at all. Anyway I was stuck in the middle of the build process, never could get results with this cross-compiling chain.
Comment 13 Jonathan Boeing 2020-10-15 14:44:32 UTC
I have a patch series that gets the Windows build working in a fresh Debian Buster 10.6 VM.  Is Bugzilla the right place to post it like https://www.claws-mail.org/devel.php says?

It's 9 patches, and the resulting 32 and 64 bit builds seem to be fine with some light testing.
Comment 14 Paul 2020-10-15 14:46:30 UTC
> Is Bugzilla the right place to post it like https://www.claws-mail.org/devel.php says?

Yes, that's why it says it! :)
Comment 15 Jonathan Boeing 2020-10-15 14:51:55 UTC
Created attachment 2105 [details]
1/9 Update instructions for building
Comment 16 Jonathan Boeing 2020-10-15 14:52:35 UTC
Created attachment 2106 [details]
2/9 Fix building cyrus-sasl
Comment 17 Jonathan Boeing 2020-10-15 14:53:11 UTC
Created attachment 2107 [details]
3/9 Fix building cyrus-sasl
Comment 18 Jonathan Boeing 2020-10-15 14:53:43 UTC
Created attachment 2108 [details]
4/9 Fix building ytnef
Comment 19 Jonathan Boeing 2020-10-15 14:54:23 UTC
Created attachment 2109 [details]
5/9 Fix building atk
Comment 20 Jonathan Boeing 2020-10-15 14:54:50 UTC
Created attachment 2110 [details]
6/9 Fix building harfbuzz
Comment 21 Jonathan Boeing 2020-10-15 14:55:23 UTC
Created attachment 2111 [details]
7/9 Fix building libetpan
Comment 22 Jonathan Boeing 2020-10-15 14:56:19 UTC
Created attachment 2112 [details]
8/9 Fix building NSIS installer
Comment 23 Jonathan Boeing 2020-10-15 14:56:49 UTC
Created attachment 2113 [details]
9/9 Fix 'make dist'
Comment 24 Bernhard E. Reiter 2020-10-15 15:51:53 UTC
Thanks for sharing, Jonathan!

I've peeked into some of the patches. There is no further commentary
about the changes, right? (Just making sure I did not overlook it)

What are your thoughts about sharing your builds as -pre releases
so that other could help with the testing? 
(I'm not sure how much testing a regular Claws release should see.)
Comment 25 Jonathan Boeing 2020-10-15 16:46:02 UTC
You didn't miss any commentary on them.  I just grabbed Paul's recent work and worked through the old patches.  Some had been upstreamed, some seem to have been obsoleted by development work, some just needed updating to work with newer versions.  I only worked on the packages where the patches failed to apply or building failed, so the rest could maybe use some attention as well.

I'm fine with sharing my builds if the Claws team is.
Comment 26 Jonathan Boeing 2020-10-15 16:52:22 UTC
One thing I noticed is that the Windows build is using an old version of cairo (1.10.2, released 2010-12-25).  The packages list has this note:

# We are keeping cairo on last version older than 1.12.0, since
# it is too slow. See https://bugs.freedesktop.org/show_bug.cgi?id=71833

The new bug is at https://gitlab.freedesktop.org/cairo/cairo/-/issues/37.  The last update was 6 years ago and says 1.12.16 is affected.

I'd like to try updating cairo and pixman to see if there's still a performance problem.
Comment 27 wwp 2020-10-15 17:01:34 UTC
Last time I checked, several components were (a bit) outdated, including some gtk libs, etpan, ytnef, libpng, that's all I can remember of.
Comment 28 Jonathan Boeing 2020-10-15 17:07:15 UTC
Also, webkitgtk: https://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=3763

The Windows build is still bundling webkitgtk-2.4.11 from 2016-04-10.  I don't use fancy, so my annoyance is limited to the hour+ it adds to the build time on my VM.  It's been three years since the linux distros dropped it for security reasons; maybe it's time for the Windows build to follow suit?
Comment 29 Jonathan Boeing 2020-10-15 17:08:28 UTC
I meant to include I'd be willing to work on removing webkitgtk from the build if the Claws team is open to it.
Comment 30 Paul 2020-10-15 17:13:00 UTC
The gtk3 branch of claws-mail is using the newer webkit, but a way to block remote content is yet to be found with this version.
Comment 31 Paul 2020-10-15 17:14:12 UTC
... and that is probably/possibly a worse security issue than anything in the older webkit
Comment 32 wwp 2020-10-15 17:16:05 UTC
What's the status of the litehtml or the dillo plugins?
Comment 33 Jonathan Boeing 2020-10-15 17:20:27 UTC
litehtml is in the Windows build; that's one of the things I tested.  The plugin loads, unloads, and renders messages successfully.
Comment 34 wwp 2020-10-15 17:51:42 UTC
Well.. we have no plugin that delivers the "quality" of the fancy/webkitgtk one, (even in GNU/Linux) and that's really really a pain. If we decide to remove it, I'd just disable it, so that anyone who want it can still build it (as it's the case for fancy).
Comment 35 Paul 2020-10-19 12:10:15 UTC
all 9 patches pushed to git. thanks
Comment 36 Bernhard E. Reiter 2020-10-23 12:30:40 UTC
@paul, @wwp, do you think it would be good if @Jonathan
shared his builds as previews for testing?

(He is willing to depending on a go from the claws team, see comment 25.)
Comment 37 Paul 2020-10-23 14:11:31 UTC
Yes. I think that would be good. Although, I can't test them myself, being windows-free.
Comment 38 Jonathan Boeing 2020-10-23 19:03:27 UTC
Here's a second set of patches.  Highlights:

 - cairo -> 1.16.0
 - pixman -> 0.40.0
 - libffi -> 3.3
 - glib -> 2.66.2
 - glib-networking -> 2.66.0
 - freetype -> 2.10.4
 - gdk-pixbuf -> 2.40.0
 - pango -> 1.47.0
 - add fribidi-1.0.10
 - remove gcrypt
Comment 39 Jonathan Boeing 2020-10-23 19:04:48 UTC
Created attachment 2117 [details]
set2 1/13 cleanup make invocation
Comment 40 Jonathan Boeing 2020-10-23 19:05:34 UTC
Created attachment 2118 [details]
set2 2/13 update gnutls build
Comment 41 Jonathan Boeing 2020-10-23 19:06:02 UTC
Created attachment 2119 [details]
set2 3/13 update libffi
Comment 42 Jonathan Boeing 2020-10-23 19:06:42 UTC
Created attachment 2120 [details]
set2 4/13 parallel building
Comment 43 Jonathan Boeing 2020-10-23 19:07:15 UTC
Created attachment 2121 [details]
set2 5/13 update meson building
Comment 44 Jonathan Boeing 2020-10-23 19:07:38 UTC
Created attachment 2122 [details]
set2 6/13 update glib
Comment 45 Jonathan Boeing 2020-10-23 19:08:17 UTC
Created attachment 2123 [details]
set2 7/13 update atk build
Comment 46 Jonathan Boeing 2020-10-23 19:08:49 UTC
Created attachment 2124 [details]
set2 8/13 update cairo and pixman
Comment 47 Jonathan Boeing 2020-10-23 19:09:14 UTC
Created attachment 2125 [details]
set2 9/13 update glib-networking
Comment 48 Jonathan Boeing 2020-10-23 19:09:39 UTC
Created attachment 2126 [details]
set2 10/13 update freetype
Comment 49 Jonathan Boeing 2020-10-23 19:10:10 UTC
Created attachment 2127 [details]
set2 11/13 update gdk-pixbuf
Comment 50 Jonathan Boeing 2020-10-23 19:10:34 UTC
Created attachment 2128 [details]
set2 12/13 update pango
Comment 51 Jonathan Boeing 2020-10-23 19:11:00 UTC
Created attachment 2129 [details]
set2 13/13 add fribidi
Comment 52 Jonathan Boeing 2020-10-23 19:13:49 UTC
Comments on this set of patches:

gnutls - gnutls removed the dependency on gcrypt quite a while ago.  I didn't find any other packages in the build that depend on it, so I removed it.  Libetpan added -lgcrypt to the linker flags if gnutls was used, but it isn't necessary anymore.  Debian also had a patch for this at https://salsa.debian.org/claws-mail-team/libetpan/-/blob/master/debian/patches/10_unnecessary_linkage.diff

meson - quite a few packages are switching to meson, so I made the meson support added for the atk package more broadly available.  It might be worth giving meson packages their own template in src/claws-mail.mk.in, but for now I left it under the SPKG template

pkg-config (glib and others) - some pkg-config files were ending up with prefix=/usr instead of pointing to src/playground/install/... .  One example is glib, which meant atk needed an explicit glib path to be specified.  src/Makefile.am has this note:
    # We need to fix the prefix in the various packages using pkgconfig,
    # or we can't substitute it properly in our pkg-config wrapper.
That no longer seems to be the case.  The 'fix' was to overwrite the pkg-config prefix to prefix=/usr.  Some packages (like glib) get munged but never un-munged.  Some get munged and un-munged successfully.  Others don't get munged at all but still have the correct prefix.  To address this, I removed the 'fix' where it was causing failures.  There are still a few more .pc files with prefix=/usr, but I've left those alone for now.

cairo - the slowness reported with cairo-1.12.0 seems to have been fixed at some point.  I didn't see any issues on my windows 10 vm.

pixman - claws was configuring pixman with sse2 disabled.  Pixman-0.40.0 has options for sse2 and ssse3, but it also seems to do runtime cpu detection.  I think it's safe to leave them enabled, but I don't have a system without sse2/ssse3 to test with.

gdk-pixbuf - the configure options between the old autotools and new meson builds changed somewhat.  I didn't notice any problems with my test jpg/png/bmp attachments, but I'm not sure what all might be affected
Comment 53 Jonathan Boeing 2020-10-23 19:23:37 UTC
And here are the builds with both sets of patches

32-bit build
(direct link) https://www35.zippyshare.com/d/rNj5V4XO/512003/claws-mail-3.17.7-1-32bit.exe
https://www35.zippyshare.com/v/rNj5V4XO/file.html

64-bit build
(direct link) https://www35.zippyshare.com/d/HkRBBDOI/2406107/claws-mail-3.17.7-1-64bit.exe
https://www35.zippyshare.com/v/HkRBBDOI/file.html

$ sha256sum.exe claws-mail-3.17.7-1-*
3e7adf8323ea56ebef31514505ee88e9ee1c580b20201f421226a223f898c8bf *claws-mail-3.17.7-1-32bit.exe
5f1f9803a5aec6df1f3608c13ea0f2df18a032fc2b7aa74a5efb330e435abe8e *claws-mail-3.17.7-1-64bit.exe
Comment 54 Jonathan Boeing 2020-10-23 22:04:50 UTC
I should also mention that pixman-0.40.0 requires meson >= 0.50.0.  Debian Buster has 0.49.2, so it needs to be installed from buster-backports (currently 0.52.1)
Comment 55 Bernhard E. Reiter 2020-10-26 12:44:17 UTC
@Jonathan, thanks for patches, comments and build!

(I wonder if some of the remarks should go into the build instructions.)
Comment 56 Jonathan Boeing 2020-11-08 23:12:23 UTC
Created attachment 2132 [details]
Revise and expand on patch set2

Here's another patch set.  It replaces the "set2" patches with the following revisions:

- added commit msg for 2/13 (gnutls)
- added commit msg for 8/13 (cairo/pixman)
- added commit msg for 13/13 (fribidi)
- added a note for the build instructions in the README for 8/13 (cairo/pixman)

And adds these updates:

- update claws-mail -> 3.17.8
- update expat -> 2.2.10
- update curl -> 7.73.0
- update libassuan -> 2.5.4
- update gpgme -> 1.14.0
- update libical -> 3.0.8
- update libsoup -> 2.72.0
- update libwebp -> 1.1.0
- add libpsl 0.21.1
- remove crypt package
- remove pkgconfig packages
Comment 57 Jonathan Boeing 2020-11-08 23:42:10 UTC
Build links:

32-bit: https://www11.zippyshare.com/v/QhxHQ3Vm/file.html
64-bit: https://www11.zippyshare.com/v/phAWDzQB/file.html

$ sha256sum.exe claws-mail-3.17.8-1-*
89b82b144b85bdc5f2db1fb8a61865b1493b50e1a054521a816053f68a6fa4a6 *claws-mail-3.17.8-1-32bit.exe
f20ed2383d899da0527a4be7fa0cd6f626c1a038249526e73df797c24186b965 *claws-mail-3.17.8-1-64bit.exe
Comment 58 m 2020-11-16 12:07:37 UTC
Hi, Thank you guys for your hard work.
All the various Zippyshare links give me a 403 forbidden error.
I can recommend mega.nz as a reliable free host.
Comment 59 m 2020-11-17 02:10:27 UTC
It looks like Zippyshare simply blocks access from EU.
I got around it, and here are the files on a different host:
32-bit: https://mega.nz/file/AG4EjIAS#K_mkui8x-KLGRzyehAQMJQlUo7FmQ5wSKJU3Hk-N4Dc
64-bit: https://mega.nz/file/kewEyYCA#XXeZOiKOo7Ornt-DVpLTzq1_tb3m-kiG2uFQqIZSOEg
Comment 60 m 2020-11-17 20:23:06 UTC
I have to report that these new builds do show the Cairo UI lag as reported elsewhere here already. Sadly, using the new build on my laptop results in UI re-painting dozens of folder icons every time I switch folders.

At least I assume this is what they meant with Cairo lag.
Comment 61 Jonathan Boeing 2020-11-17 22:32:14 UTC
Thanks for the feedback; I'll try to reproduce that.  What are your system specs?

Is the rest of the UI working as expected?
Comment 62 m 2020-11-19 22:48:03 UTC
This is on a X200 Thinkpad: P8700 CPU, X4500MHD GPU, 4GB RAM, Samsung 860 Evo, Windows 8.1 x64.

Running 64-bit Claws Mail.
Comment 63 Jonathan Boeing 2020-11-20 08:55:16 UTC
I wasn't able to reproduce your issue with repainting folder icons.  I created 30 new folders in an account and can switch between them without issue.  I do see a momentary flicker on the selected/deselected folder, but that's there for me with the official 3.17.4 build as well.

I've tried on Win7 x64, 8.1 x64, and 10 x64 in VMs.  I also tried on a Core2 Quad with similar specs to your system.  The difference that stands out between them is your GMA4500 vs my nvidia card.

Anyways, here's a build with the cairo, pixman, and pango updates backed out (updated pango wants updated cairo).  Do you see any issues with this build?

https://mega.nz/file/Zlg1SaAA#1aXeQXdnZoke_yEuvKhG3ex6qfnqWM4c6zU3XlSFlMI

$ sha256sum.exe 3.17.8-old-cairo.exe
50af9857898b849bb4c2ec6b76801e0e9da2f06d8e46a8e40a2dd27cde4fc003 *3.17.8-old-cairo.exe
Comment 64 Jonathan Boeing 2020-11-20 12:49:03 UTC
I spoke too soon, the Core2 system is misbehaving with the first 3.17.8 build I posted.

I can see it repaint the entire folder tree when I expand/collapse an account.  Switching between folders still works fine for me, though.  Claws also repeatedly hangs when trying to open a certain email.

Both problems went away with the 3.17.8-old-cairo.exe build.  I'll keep looking into it.
Comment 65 m 2020-12-12 13:31:56 UTC
Hi Jonathan, sorry for the late reply.
The old cairo version appears to be working fine. I'll continue to use it for a bit and report back.
Comment 66 Paul 2020-12-22 10:17:06 UTC
all patches up to "Revise and expand on patch set2" now applied and pushed. Thanks!
Comment 67 m 2021-02-21 03:37:39 UTC
Old Cairo is stable except for a crash that I get a lot when also loading the LiteHMTL plugin alongside. It looks like this:

Version=1
EventType=APPCRASH
EventTime=132583508533626892
ReportType=2
Consent=1
ReportIdentifier=ded6bc67-73f2-11eb-854d-001f1636cfec
IntegratorReportIdentifier=ded6bc66-73f2-11eb-854d-001f1636cfec
NsAppName=claws-mail.exe
Response.type=4
Sig[0].Name=Application Name
Sig[0].Value=claws-mail.exe
Sig[1].Name=Application Version
Sig[1].Value=0.0.0.0
Sig[2].Name=Application Timestamp
Sig[2].Value=00000000
Sig[3].Name=Fault Module Name
Sig[3].Value=libcairo-2.dll
Sig[4].Name=Fault Module Version
Sig[4].Value=0.0.0.0
Sig[5].Name=Fault Module Timestamp
Sig[5].Value=00000000
Sig[6].Name=Exception Code
Sig[6].Value=c0000005
Sig[7].Name=Exception Offset
Sig[7].Value=000000000004af74
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=6.3.9600.2.0.0.256.48
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=1031
DynamicSig[22].Name=Additional Information 1
DynamicSig[22].Value=da49
DynamicSig[23].Name=Additional Information 2
DynamicSig[23].Value=da499fdd4ec4894ba4f03e12f0b37ac8
DynamicSig[24].Name=Additional Information 3
DynamicSig[24].Value=0882
DynamicSig[25].Name=Additional Information 4
DynamicSig[25].Value=088278d224e7929cc68b36e830c104e8
UI[2]=C:\Program Files\Claws Mail\claws-mail.exe
UI[3]=claws-mail.exe has stopped working
UI[4]=Windows can check online for a solution to the problem.
UI[5]=Check online for a solution and close the program
UI[6]=Check online for a solution later and close the program
UI[7]=Close the program
LoadedModule[0]=C:\Program Files\Claws Mail\claws-mail.exe
LoadedModule[1]=C:\Windows\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\Windows\system32\KERNEL32.DLL
LoadedModule[3]=C:\Windows\system32\KERNELBASE.dll
LoadedModule[4]=C:\Program Files\Claws Mail\libgdk_pixbuf-2.0-0.dll
LoadedModule[5]=C:\Program Files\Claws Mail\libgio-2.0-0.dll
LoadedModule[6]=C:\Program Files\Claws Mail\libglib-2.0-0.dll
LoadedModule[7]=C:\Program Files\Claws Mail\libgmodule-2.0-0.dll
LoadedModule[8]=C:\Program Files\Claws Mail\libgobject-2.0-0.dll
LoadedModule[9]=C:\Program Files\Claws Mail\libnettle-8.dll
LoadedModule[10]=C:\Program Files\Claws Mail\libcairo-2.dll
LoadedModule[11]=C:\Program Files\Claws Mail\libenchant-1.dll
LoadedModule[12]=C:\Program Files\Claws Mail\libintl-8.dll
LoadedModule[13]=C:\Program Files\Claws Mail\libgnutls-30.dll
LoadedModule[14]=C:\Program Files\Claws Mail\libgdk-win32-2.0-0.dll
LoadedModule[15]=C:\Program Files\Claws Mail\libgtk-win32-2.0-0.dll
LoadedModule[16]=C:\Program Files\Claws Mail\libetpan-20.dll
LoadedModule[17]=C:\Program Files\Claws Mail\libiconv-2.dll
LoadedModule[18]=C:\Program Files\Claws Mail\libpango-1.0-0.dll
LoadedModule[19]=C:\Program Files\Claws Mail\libpangocairo-1.0-0.dll
LoadedModule[20]=C:\Program Files\Claws Mail\libregex-1.dll
LoadedModule[21]=C:\Windows\system32\ADVAPI32.dll
LoadedModule[22]=C:\Windows\system32\comdlg32.dll
LoadedModule[23]=C:\Windows\system32\msvcrt.dll
LoadedModule[24]=C:\Windows\system32\ole32.dll
LoadedModule[25]=C:\Program Files\Claws Mail\libwinpthread-1.dll
LoadedModule[26]=C:\Windows\system32\SHELL32.dll
LoadedModule[27]=C:\Windows\system32\USER32.dll
LoadedModule[28]=C:\Windows\system32\WLDAP32.dll
LoadedModule[29]=C:\Windows\system32\WS2_32.dll
LoadedModule[30]=C:\Program Files\Claws Mail\libpng16-16.dll
LoadedModule[31]=C:\Windows\WinSxS\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.9600.19913_none_932b6bfd474fcd2a\gdiplus.dll
LoadedModule[32]=C:\Program Files\Claws Mail\zlib1.dll
LoadedModule[33]=C:\Windows\SYSTEM32\DNSAPI.dll
LoadedModule[34]=C:\Windows\SYSTEM32\IPHLPAPI.DLL
LoadedModule[35]=C:\Program Files\Claws Mail\libffi-7.dll
LoadedModule[36]=C:\Program Files\Claws Mail\libfontconfig-1.dll
LoadedModule[37]=C:\Program Files\Claws Mail\libfreetype-6.dll
LoadedModule[38]=C:\Program Files\Claws Mail\libpixman-1-0.dll
LoadedModule[39]=C:\Windows\system32\GDI32.dll
LoadedModule[40]=C:\Windows\SYSTEM32\MSIMG32.dll
LoadedModule[41]=C:\Program Files\Claws Mail\libgcc_s_seh-1.dll
LoadedModule[42]=C:\Program Files\Claws Mail\libhogweed-6.dll
LoadedModule[43]=C:\Program Files\Claws Mail\libgmp-10.dll
LoadedModule[44]=C:\Program Files\Claws Mail\libtasn1-6.dll
LoadedModule[45]=C:\Windows\system32\CRYPT32.dll
LoadedModule[46]=C:\Windows\system32\IMM32.dll
LoadedModule[47]=C:\Program Files\Claws Mail\libatk-1.0-0.dll
LoadedModule[48]=C:\Program Files\Claws Mail\libpangowin32-1.0-0.dll
LoadedModule[49]=C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.9600.17810_none_34ae2abd958aedeb\COMCTL32.dll
LoadedModule[50]=C:\Windows\SYSTEM32\WINSPOOL.DRV
LoadedModule[51]=C:\Program Files\Claws Mail\libsasl2-3.dll
LoadedModule[52]=C:\Program Files\Claws Mail\libstdc++-6.dll
LoadedModule[53]=C:\Program Files\Claws Mail\libpangoft2-1.0-0.dll
LoadedModule[54]=C:\Program Files\Claws Mail\libxml2-2.dll
LoadedModule[55]=C:\Windows\SYSTEM32\sechost.dll
LoadedModule[56]=C:\Windows\system32\RPCRT4.dll
LoadedModule[57]=C:\Windows\system32\SHLWAPI.dll
LoadedModule[58]=C:\Windows\SYSTEM32\combase.dll
LoadedModule[59]=C:\Windows\system32\NSI.dll
LoadedModule[60]=C:\Windows\SYSTEM32\WINNSI.DLL
LoadedModule[61]=C:\Windows\system32\MSASN1.dll
LoadedModule[62]=C:\Windows\system32\MSCTF.dll
LoadedModule[63]=C:\Windows\SYSTEM32\USP10.dll
LoadedModule[64]=C:\Program Files\Claws Mail\libharfbuzz-0.dll
LoadedModule[65]=C:\Windows\system32\SspiCli.dll
LoadedModule[66]=C:\Windows\SYSTEM32\SHCORE.DLL
LoadedModule[67]=C:\Windows\SYSTEM32\ncrypt.dll
LoadedModule[68]=C:\Windows\SYSTEM32\bcrypt.dll
LoadedModule[69]=C:\Windows\SYSTEM32\NTASN1.dll
LoadedModule[70]=C:\Windows\SYSTEM32\CRYPTSP.dll
LoadedModule[71]=C:\Windows\system32\rsaenh.dll
LoadedModule[72]=C:\Windows\SYSTEM32\CRYPTBASE.dll
LoadedModule[73]=C:\Windows\SYSTEM32\bcryptPrimitives.dll
LoadedModule[74]=C:\Windows\system32\mswsock.dll
LoadedModule[75]=C:\Windows\SYSTEM32\profapi.dll
LoadedModule[76]=C:\Windows\SYSTEM32\kernel.appcore.dll
LoadedModule[77]=C:\Windows\system32\uxtheme.dll
LoadedModule[78]=C:\Windows\system32\OLEAUT32.dll
LoadedModule[79]=C:\Windows\system32\SETUPAPI.dll
LoadedModule[80]=C:\Windows\system32\CFGMGR32.dll
LoadedModule[81]=C:\Program Files\Claws Mail\lib\gtk-2.0\2.10.0\engines\libwimp.dll
LoadedModule[82]=C:\Windows\system32\dwmapi.dll
LoadedModule[83]=C:\Windows\SYSTEM32\mscms.dll
LoadedModule[84]=C:\Windows\SYSTEM32\USERENV.dll
LoadedModule[85]=C:\Windows\SYSTEM32\icm32.dll
LoadedModule[86]=C:\Windows\SYSTEM32\clbcatq.dll
LoadedModule[87]=C:\Windows\system32\propsys.dll
LoadedModule[88]=C:\Program Files\Claws Mail\lib\sasl2\libanonymous-3.dll
LoadedModule[89]=C:\Program Files\Claws Mail\lib\sasl2\libcrammd5-3.dll
LoadedModule[90]=C:\Program Files\Claws Mail\lib\sasl2\libdigestmd5-3.dll
LoadedModule[91]=C:\Program Files\Claws Mail\lib\sasl2\liblogin-3.dll
LoadedModule[92]=C:\Program Files\Claws Mail\lib\sasl2\libplain-3.dll
LoadedModule[93]=C:\Windows\system32\napinsp.dll
LoadedModule[94]=C:\Windows\system32\pnrpnsp.dll
LoadedModule[95]=C:\Windows\system32\NLAapi.dll
LoadedModule[96]=C:\Windows\System32\winrnr.dll
LoadedModule[97]=C:\Windows\System32\fwpuclnt.dll
LoadedModule[98]=C:\Windows\System32\rasadhlp.dll
LoadedModule[99]=C:\Program Files\Claws Mail\lib\claws-mail\plugins\rssyl.dll
LoadedModule[100]=C:\Program Files\Claws Mail\libcurl-4.dll
LoadedModule[101]=C:\Program Files\Claws Mail\libexpat-1.dll
LoadedModule[102]=C:\Program Files\Claws Mail\libpsl-5.dll
LoadedModule[103]=C:\Windows\system32\Normaliz.dll
LoadedModule[104]=C:\Program Files\Claws Mail\icuuc58.dll
LoadedModule[105]=C:\Windows\SYSTEM32\msvcr100.dll
LoadedModule[106]=C:\Program Files\Claws Mail\icudata58.dll
LoadedModule[107]=C:\Windows\SYSTEM32\secur32.dll
LoadedModule[108]=C:\Program Files\Claws Mail\lib\claws-mail\plugins\notification.dll
LoadedModule[109]=C:\Program Files\Claws Mail\lib\claws-mail\plugins\litehtml_viewer.dll
LoadedModule[110]=C:\Program Files\Claws Mail\libgumbo-1.dll
LoadedModule[111]=C:\Windows\system32\winhttp.dll
FriendlyEventName=Stopped working
ConsentKey=APPCRASH
AppName=claws-mail.exe
AppPath=C:\Program Files\Claws Mail\claws-mail.exe
NsPartner=windows
NsGroup=windows8
ApplicationIdentity=F5CEBC554C9C29BC2D92ED6FEA2EC70D
Comment 68 m 2021-02-21 03:38:12 UTC
Happens mostly when scrolling in mail view.
Comment 69 Jonathan Boeing 2021-02-26 23:21:19 UTC
Thanks m, I was able to reproduce that crash.  Mine was when rapidly loading various HTML emails, but it was the same exception code and offset.

It looks like it's internal to pango/cairo.  I was also able to see it with the 3.17.4 build, so it's not a regression at least.
Comment 70 Jonathan Boeing 2021-02-26 23:32:10 UTC
Created attachment 2179 [details]
Replace close with fclose

Here's a patch for claws mail itself.  It fixes a mismatch with calling close() instead of fclose() on a FILE*.
Comment 71 Jonathan Boeing 2021-02-26 23:39:45 UTC
Created attachment 2180 [details]
Add WIN32 define for litehtml

And another patch for claws for building Litehtml.  Litehtml has an #ifdef WIN32 that leads to a bunch of compiler warnings without it.
Comment 72 m 2021-03-31 19:50:59 UTC
Hey Jonathan,

CM looks to be in a good place with the latest Windows releases.
LiteHTML works, there are no crashes even on 64-bit so far, cairo works again. (Haven't tested on Core2 yet, but I assume it will work there too)

I want to thank you for fixing up the Windows builds after they were messed up for such a long time. They're finally usable again and I can switch back to CM. Cheers!

Note You need to log in before you can comment on or make changes to this bug.