GNOME Bugzilla – Bug 624885
Hard crash on Windows after sync - related to libproxy
Last modified: 2010-10-04 19:38:55 UTC
Created attachment 166247 [details] [review] Prevent hard crash when libproxy is not installed Here's the output from a user session on Windows 7 64-bit. This is 100% reproducible on this box when syncing with Ubuntu One. Also uploading the patch I'm using to avoid the hard crash. C:\path\to\bin\Debug>Tomboy.exe --debug C:\path\to\bin\Debug> [DEBUG 17:25:39.344] NoteManager created with note path "C:\Users\jstein\AppData\Roaming\Tomboy\notes". [DEBUG 17:25:39.375] EnableDisable Called: enabling... True [DEBUG 17:25:39.391] Binding key '<Alt>F12' for '/apps/tomboy/global_keybindings/show_note_menu' [DEBUG 17:25:39.391] Binding key '<Alt>F10' for '/apps/tomboy/global_keybindings/open_start_here' [DEBUG 17:25:39.391] Binding key '<Alt>F11' for '/apps/tomboy/global_keybindings/create_new_note' [DEBUG 17:25:39.391] Binding key '<Alt>F8' for '/apps/tomboy/global_keybindings/open_search' [DEBUG 17:25:39.391] Binding key '<Alt>F9' for '/apps/tomboy/global_keybindings/open_recent_changes' [DEBUG 17:25:39.453] Unable to load icon 'tomboy-panel'. [INFO 17:25:39.874] Initializing Mono.Addins pp SCAN: SetupDomain ERROR: There was an error while scanning assembly: C:\path\to\bin\Debug\MonoPosixHelper.dll (The module was expected to contain an assembly manifest. (Exception from HRESULT: 0x80131018)) [DEBUG 17:25:40.592] AddinManager.OnAddinLoaded: Tomboy.Tomboy [DEBUG 17:25:40.592] Name: Tomboy.Tomboy,0.10 [DEBUG 17:25:40.592] Description: [DEBUG 17:25:40.592] Namespace: Tomboy [DEBUG 17:25:40.592] Enabled: True [DEBUG 17:25:40.592] File: C:\path\to\bin\Debug\Tomboy.exe pp SCAN: SetupDomain ERROR: There was an error while scanning assembly: C:\path\to\bin\Debug\MonoPosixHelper.dll (The module was expected to contain an assembly manifest. (Exception from HRESULT: 0x80131018))[DEBUG 17:25:41.356] AddinManager.OnAddinLoaded: Tomboy.WebSyncServiceAddin [DEBUG 17:25:41.356] Name: Web Sync Service Add-in [DEBUG 17:25:41.356] Description: Synchronize Tomboy Notes with Tomboy Online and other compatible web services [DEBUG 17:25:41.356] Namespace: Tomboy [DEBUG 17:25:41.356] Enabled: True [DEBUG 17:25:41.372] File: C:\path\to\bin\Debug\WebSyncServiceAddin.dll [DEBUG 17:25:41.466] AddinManager.OnAddinLoaded: Tomboy.BacklinksAddin [DEBUG 17:25:41.466] Name: Backlinks [DEBUG 17:25:41.466] Description: See which notes link to the one you're currently viewing. [DEBUG 17:25:41.466] Namespace: Tomboy [DEBUG 17:25:41.466] Enabled: True [DEBUG 17:25:41.481] File: C:\path\to\bin\Debug\Backlinks.dll [DEBUG 17:25:41.481] AddinManager.OnAddinLoaded: Tomboy.FixedWidthAddin [DEBUG 17:25:41.481] Name: Fixed Width [DEBUG 17:25:41.481] Description: Adds fixed-width font style. [DEBUG 17:25:41.481] Namespace: Tomboy [DEBUG 17:25:41.497] Enabled: True [DEBUG 17:25:41.497] File: C:\path\to\bin\Debug\FixedWidth.dll [DEBUG 17:25:41.497] AddinManager.OnAddinLoaded: Tomboy.UnderlineAddin [DEBUG 17:25:41.497] Name: Underline [DEBUG 17:25:41.497] Description: Adds ability to underline text. [DEBUG 17:25:41.497] Namespace: Tomboy [DEBUG 17:25:41.512] Enabled: True [DEBUG 17:25:41.512] File: C:\path\to\bin\Debug\Underline.dll [DEBUG 17:25:41.528] Autosync pref changed...restarting sync timer [DEBUG 17:25:41.528] Tomboy remote control active. [DEBUG 17:25:41.544] Windows Taskbar: Begin jump list [DEBUG 17:25:42.152] Windows Taskbar: Commit jump list [DEBUG 17:26:23.500] SyncThread using SyncServiceAddin: Tomboy Web [DEBUG 17:26:23.525] Building web request for URL: https://one.ubuntu.com/notes//api/1.0/ [WARN 17:26:23.563] libproxy not installed [DEBUG 17:26:24.492] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/user/ [DEBUG 17:26:24.787] 8 [DEBUG 17:26:24.788] Sync: GetNoteUpdatesSince rev 47 [DEBUG 17:26:24.789] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/?include_notes=true&since=47 [DEBUG 17:26:25.243] Sync: 0 updates since rev 47 [DEBUG 17:26:25.246] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/ [DEBUG 17:26:25.745] Sync: Uploading 0 note updates [DEBUG 17:26:25.745] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/ [DEBUG 17:26:26.047] Sync: New revision: 47 [DEBUG 17:26:41.540] BackgroundSyncChecker: Checking server for updates [DEBUG 17:26:41.540] Building web request for URL: https://one.ubuntu.com/notes//api/1.0/ [DEBUG 17:26:42.148] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/user/ [DEBUG 17:27:00.109] SyncThread using SyncServiceAddin: Tomboy Web [DEBUG 17:27:00.109] Building web request for URL: https://one.ubuntu.com/notes//api/1.0/ [DEBUG 17:27:00.558] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/user/ [DEBUG 17:27:00.897] 8 [DEBUG 17:27:00.897] Sync: GetNoteUpdatesSince rev 47 [DEBUG 17:27:00.898] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/?include_notes=true&since=47 [DEBUG 17:27:01.211] Sync: 0 updates since rev 47 [DEBUG 17:27:01.211] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/ [DEBUG 17:27:01.709] Sync: Uploading 0 note updates [DEBUG 17:27:01.709] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/ [DEBUG 17:27:02.052] Sync: New revision: 47 [DEBUG 17:27:05.326] SyncThread using SyncServiceAddin: Tomboy Web [DEBUG 17:27:05.327] Building web request for URL: https://one.ubuntu.com/notes//api/1.0/ [DEBUG 17:27:05.527] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/user/ [DEBUG 17:27:05.854] 8 [DEBUG 17:27:05.854] Sync: GetNoteUpdatesSince rev 47 [DEBUG 17:27:05.854] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/?include_notes=true&since=47 [DEBUG 17:27:06.198] Sync: 0 updates since rev 47 [DEBUG 17:27:06.198] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/ [DEBUG 17:27:06.646] Sync: Uploading 0 note updates [DEBUG 17:27:06.647] Building web request for URL: https://one.ubuntu.com/notes/api/1.0/op/ [DEBUG 17:27:07.115] Sync: New revision: 47 Unhandled Exception: System.DllNotFoundException: Unable to load DLL 'proxy': The specified module could not be found. (Exception from HRESULT: 0x8007007E) at LibProxy.ProxyFactory.px_proxy_factory_free(HandleRef self) at LibProxy.ProxyFactory.Finalize() in C:\path\to\Tomboy\Addins\WebSyncService\LibProxy\LibProxy.cs:line 82
Looks good to me. I'm not sure if I like the fact that the constructor might throw, but that's what it is now and ApplyProxy handles that. Unfortunately the finalizer was forgotten. I'd like to see this one pushed. For the reference: If you use git format-patch you can help us by providing a sensible log message and your contact details. That makes it easier to commit it "for you", you being the author and one over here just doing the commit. Sandy? What do you say?
I had the same crash problem on 1.3.3 so i built Tomboy from source with this patch applied and things are working great now. I think this one should be pushed to the central repository right away and included in the next release because the way 1.3.3 behaves right now makes it impossible for windows users to sync. (Call this a bump :P )
We're in hard code freeze now. I'll probably push this in a quick-fire 1.4.1 release, as I'm a bit busy for freeze break requests.
*** Bug 631286 has been marked as a duplicate of this bug. ***
Benjamin, feel free to push to master and gnome-2-32 branch. This can make today's 1.5.0 unstable release.
Please also make sure there's a win32 build of this -- tomboy is only useful to me when it's x-platform (home: ubuntu; work: win7). Appreciated.
Great. Jeff, if you happen to follow: Is it okay if I attribute the change in git to you, taking the full name from your domain?
Davyd: This fix is only Windows related (i.e. it's only affecting windows, only the windows codebase). From what I can tell on IRC right now it seems that a new MSI will be available later today/tomorrow (depending on our time and your timezone).
@Benjamin: Thanks for the update (: I'll look forward to the new release. Hopefully it will be noted at http://projects.gnome.org/tomboy/ ? I see the latest version there is 1.3.2, though I somehow have 1.3.3 -- no idea where I got that from...
Patch committed, closing.