Aeva / ridinghood

An experimental web browser for the paranoid
GNU General Public License v3.0
3 stars 2 forks source link

closing tabs causes unexpected behavior #15

Open Aeva opened 7 years ago

Aeva commented 7 years ago

This tracks a loose end from #7 and #14.

This bug effects universe that have at least two browser tabs in them.

In the first situation, if you attempt to destroy the universe from the universe context menu, the browser will segfault and close. fix't

In the second situation, if you close one of the tabs, the other tabs in that universe will no longer display correctly. Tabs in other universes seem to be unaffected. I think one of several things is going on:

Aeva commented 7 years ago

For the segfault, this is sometimes printed: Gtk:ERROR:gtktreestore.c:592:gtk_tree_store_get_path: assertion failed: (G_NODE (iter->user_data)->parent != NULL)

The last successful call before the segfault appears to be the self.tab_store.remove(tab_iter) in BrowserWindow::close_tab!

So, the solution looks to be to not cache the tab_iter value, but regenerate it as needed.

Aeva commented 7 years ago

Ok, that resolves the segfault, but the other issue remains.