Hi Jaap,

Thanks for the feedback!

I spent half a day to understand it (the continued reports and
confirmations on Fedora's Bugzilla on the corresponding bug drove me mad
:D ), so - despite the one-line diff, this was a bit complicated,
especially me not having hacked in Python for quiet some time...

The test passes, because the exception that triggers Ubuntu's and
Fedora's crash report tools unfortunately doesn't interrupt the test
run. I played around with G_DEBUG=fatal_warnings in the environment and
this may be necessary for the exception to be raised (otherwise Python
is blind anyway). But even the exception being raised obviously doesn't
crash the test hard enough, presumeably because it happens in an async
event handler (the async tree view update). That's why I empty the GTK
message queue in the test.

Maybe - for testing purposes - making the treeview update in the main
thread would make the test fail, but I didn't have the time to check if
this is (easily) possible. -> TODO ?!

btw.: to reproduce the reported problem "live", one has to move the last
child of any sub-tree and that child must be displayed (and selected in
the treeview) before being moved. Then the treepath (the tuple of ints)
becomes invalid and crashes the treeview update when it tries to get an
iter for the invalid tuple. When another child is used, the treepath
remains valid (it just refers to the wrong page, which isn't noticed).
When the moved page isn't displayed, the critical treeview line isn't
touched in the problematic update.

Hope this explains a bit.

Cheers, Fabian
 
----------------ursprüngliche Nachricht-----------------
Von: "Jaap Karssenberg" jaap.karssenb...@gmail.com 
An: e-mail+launch...@fabianmoser.at 
Datum: Fri, 18 May 2012 08:08:36 -0000
-------------------------------------------------
 
 
> Branch merged. Definitely will not hurt. However if I disable the fix
> the test passes as well, so still not sure about the underlying root
> cause. But sure hope this fixes the issue.
> 
> Thanks for looking into it!
> 
> Jaap
> 
> -- 
> You received this bug notification because you are a bug assignee.
> https://bugs.launchpad.net/bugs/915037
> 
> Title:
> zim crashed with ValueError in select_page(): invalid tree path
> 
> Status in Zim desktop wiki:
> In Progress
> Status in “zim” package in Ubuntu:
> In Progress
> 
> Bug description:
> I recieved this crash error while deleting items in the index.
> 
> ProblemType: Crash
> DistroRelease: Ubuntu 12.04
> Package: zim 0.54-1 [modified: usr/share/applications/zim.desktop]
> ProcVersionSignature: Ubuntu 3.2.0-8.14-generic 3.2.0
> Uname: Linux 3.2.0-8-generic x86_64
> NonfreeKernelModules: fglrx
> ApportVersion: 1.90-0ubuntu1
> Architecture: amd64
> CrashCounter: 1
> Date: Wed Jan 11 16:04:55 2012
> ExecutablePath: /usr/bin/zim
> InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha amd64 
> (20111129.1)
> InterpreterPath: /usr/bin/python2.7
> PackageArchitecture: all
> ProcCmdline: /usr/bin/python /usr/bin/zim --list
> ProcEnviron:
> LANGUAGE=en_CA:en
> PATH=(custom, user)
> LANG=en_CA.UTF-8
> SHELL=/bin/bash
> PythonArgs: ['/usr/bin/zim', '--list']
> SourcePackage: zim
> Title: zim crashed with ValueError in select_page(): invalid tree path
> UpgradeStatus: No upgrade log present (probably fresh install)
> UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
> 
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/zim/+bug/915037/+subscriptions
> 

--

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/915037

Title:
  zim crashed with ValueError in select_page(): invalid tree path

To manage notifications about this bug go to:
https://bugs.launchpad.net/zim/+bug/915037/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to