[Github-comments] [geany/geany] Fix 'changed' flag being altered when all documents are closing. (#1857)
Colomban Wendling
notifications at xxxxx
Sun Dec 2 12:29:23 UTC 2018
b4n requested changes on this pull request.
Great work investigating and fixing this!
I came to the same conclusion as you did trying to see how I'd fix that.
Logic looks good to me, and I couldn't find a case of bad behavior when actually trying it :+1:
I'd just like a few small fixups and we should be good to go.
> @@ -704,7 +704,7 @@ static gboolean remove_page(guint page_num)
g_return_val_if_fail(doc != NULL, FALSE);
- if (doc->changed && ! dialogs_show_unsaved_file(doc))
+ if (! main_status.closing_all && doc->changed && ! dialogs_show_unsaved_file(doc))
Please add a comment above, like `/* if we're closing all, document_account_for_unsaved() has been called already, no need to ask again. */`
> @@ -3387,11 +3387,7 @@ gboolean document_account_for_unsaved(void)
return FALSE;
}
}
- /* all documents should now be accounted for, so ignore any changes */
- foreach_document (i)
- {
- documents[i]->changed = FALSE;
- }
+
Now you removed this, maybe remove the comment stating that *If successful, this should always be followed up with a call to `document_close_all()`* right above the function.
> @@ -3387,11 +3387,7 @@ gboolean document_account_for_unsaved(void)
return FALSE;
}
}
- /* all documents should now be accounted for, so ignore any changes */
- foreach_document (i)
- {
- documents[i]->changed = FALSE;
- }
+
Variable `i` is now unused and should be removed.
> @@ -3400,14 +3396,6 @@ static void force_close_all(void)
{
guint i, len = documents_array->len;
`len` is now unused and should be removed.
> @@ -1262,16 +1262,20 @@ static void queue_free(GQueue *queue)
}
-static void do_main_quit(void)
+static gboolean do_main_quit(void)
{
geany_debug("Quitting...");
Could you move the debug info after `docuent_close_all()`? now it'd be kind of confusing if the user aborted the quitting process.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/1857#pullrequestreview-180558213
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20181202/1ce3ff38/attachment.html>
More information about the Github-comments
mailing list