Follow-up Comment #31, patch #2715 (project freeciv): TBH, the real gtk3 client (not just gtk2-by-cairo) will require a bit of reworking this patch.
While I haven't (yet) even tried to debug why does it crash upon start if built against gtk3, I can make a good guess: AFAICT, in gtk3 case, the context of "draw" signal (that replaced "expose-event") *must not* be destroyed (and obviously it's already clipped to the widget size). That's why I suspect .context would make a better element of canvas than .window. The obvious catch is all of the functions would need to be rechecked whether or not they're called outside former "expose-event". I think the lobotomy, I mentioned in comment #9, should have help with that. Now, that I think about it, perhaps I should simply reverse the logic and check for .pixmap==NULL on canvas, instead of the other one. BTW, a couple of changes in the patch is just a bit of noise, as I was trying to silence some of the compiler warnings (IIRC, on -Wall) - mostly things like "signed-unsigned comparison". _______________________________________________________ Reply to this item at: <http://gna.org/patch/?2715> _______________________________________________ Message sent via/by Gna! http://gna.org/ _______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev