[Freeciv-Dev] [bug #16846] Client crashes when changed settings during a meeting
Update of bug #16846 (project freeciv): Status: Ready For Test = Fixed Open/Closed:Open = Closed ___ Reply to this item at: http://gna.org/bugs/?16846 ___ Message posté via/par Gna! http://gna.org/ ___ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev
[Freeciv-Dev] [bug #16846] Client crashes when changed settings during a meeting
Update of bug #16846 (project freeciv): Status:None = Ready For Test Assigned to:None = pepeto ___ Follow-up Comment #4: Patch modified: * Don't make changes in unmaintained clients. * Don't update the science report dialog if there is no requirement tree at all. * Remove the prototype duplicate in client/gui-gtk-2.0/repodlgs.h. * Removed obsolete comment in client/options.c. * Added similar assertions to gui_dialog_present() and gui_dialog_raise(). Added version for S2_2. (file #11143, file #11144) ___ Additional Item Attachment: File name: trunk_S2_3_reqtree_show_icons.diff Size:5 KB File name: S2_2_reqtree_show_icons.diff Size:5 KB ___ Reply to this item at: http://gna.org/bugs/?16846 ___ Message posté via/par Gna! http://gna.org/ ___ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev
[Freeciv-Dev] [bug #16846] Client crashes when changed settings during a meeting
Follow-up Comment #1, bug #16846 (project freeciv): Freeciv client crashes, because gui_dialog_alert function receives a NULL pointer to the meeting dialog. This happens after any tech tree related options are changed in the client (other options are unaffected), because reqtree_show_icons_callback closes all dialogs (even though it should only close the research dialog) and the meeting dialog happens to be in use. I have attached a patch that adds an appropriate assertion in gui_dialog_alert and fixes the behaviour of reqtree_show_icons_callback. I didn't find a portable function that would close only some particular dialog, so the callback no longer closes any of them. Note that with this new behaviour, the research dialog might become distorted after changing the tech tree settings (manually reopening it fixes this). But if the callback is unchanged, the player can no longer access the meeting screen after it has been closed like this, unless that meeting is canceled and a new meeting is started. If both players lock themselves out in this way, they won't be able to interact diplomatically for the rest of the game, which is a more serious problem than a graphical glitch. I also took the liberty of making some of the indentation consistent with the current style. (file #11131) ___ Additional Item Attachment: File name: 20101106-trunk-client-crashes-when-techtree-settings-are-changed-in-meeting.diff Size:1 KB ___ Reply to this item at: http://gna.org/bugs/?16846 ___ Message sent via/by Gna! http://gna.org/ ___ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev
[Freeciv-Dev] [bug #16846] Client crashes when changed settings during a meeting
Update of bug #16846 (project freeciv): Planned Release: = 2.2.4, 2.3.0, 2.4.0 ___ Follow-up Comment #2: Well caught again. There need some more modifications I guess. It is not normal the reqtree gets distorted. popdown_all_game_dialogs() was a temporary hack, but very ugly... popdown_research_dialog() would be the same actually. What we need is to redraw the reqtree, that's all. It can simply be done adding a function like science_dialog_reqtree_redraw() (yes, actually in the code, the research dialog has kept the old name) in client/include/repodlgs_g.c and adding a such functions in client/gui-*/repodlgs.c files. As far I know, only the Gtk2 client use the reqtree, so it would be very easy to port... ___ Reply to this item at: http://gna.org/bugs/?16846 ___ Message posté via/par Gna! http://gna.org/ ___ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev
[Freeciv-Dev] [bug #16846] Client crashes when changed settings during a meeting
Follow-up Comment #3, bug #16846 (project freeciv): Changes added. Now the callback function redraws the research dialog. I tested the Gtk client and it works, but I can't test the other ones. Could someone check if this patch breaks anything on other clients, please? (file #11134) ___ Additional Item Attachment: File name: 20101106-trunk-client-crashes-when-techtree-settings-are-changed-in-meeting-2.diff Size:6 KB ___ Reply to this item at: http://gna.org/bugs/?16846 ___ Message sent via/by Gna! http://gna.org/ ___ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev