Some changes in libpng 1.6+ cause it issue warning or even not work correctly with the original HP/MS sRGB profile. You will notice this in stderr:
libpng warning: iCCP: known incorrect sRGB profile
The old profile uses a D50 whitepoint, where D65 is standard. This profile is not uncommon, being used by Adobe Photoshop, although it was not embedded into images by default.
The simplest solution is simply to remove the embedded profile from your image. This can cause a slight shift in color *IF* have have a properly calibrated system, monitor, and software.
If a developer used the "kill unit" debug command to end a scenario,
the scenario did something special on victory (e.g. showing messages)
and the scenario didn't explicitly set victory_when_enemies_defeated=no,
the special actions were skipped.
The cause was a reference with a too long lifetime.
Menu_handler::kill_unit() obtained a reference to the mouse position and
used it to send "last_breath" and "die" events. But if the mouse position
changed in between (for example, as a result of the last_breath event
doing something), the reference switched to point to the new mouse
position. As a result, the function sent the "die" event with incorrect
coordinates, filtering dropped the event, and the event handlers weren't
run.
Fixed by copying the mouse position instead.
Semantically this doesn't change anything because spaces in event names are
automatically replaced with underscores.
I just spent a considerable amount of time searching for code that fires
the enemies_defeated event, only to find that it's called
"enemies defeated", with a space, at the call site. Let's use the
underscored name everywhere to make the function easier to find.
This includes:
* Allowing the details area to scroll should the parent dialog not be long enough.
* Scaling all displayed sprites to 144x144 while maintaining aspect ratio.
* Forcing extra width so all mainline unit names have enough space to appear.
* Removing the unused 'minimal' definition. Might be added back later.
* Fixing the borders. The internal widgets shouldn't have outside borders, since borders
should be set for the widget instance in a containing dialog.
And the Lord said, "Thou hast already consumed My Holy Water, thou needest another not."
And, hearing the Word of the Lord, Posieden said, "Yo! Storm Trident! Dude, look in your hand!"