Added some extra debug messages around the for loop at line 820 in xsplash.c and it looks like the problem is with how we iterate through the signal list:
[02:46:36:1158476869 - MSG] xsplash started
[02:46:36:1158477102 - MSG] get_background_filename(): looking for appropriate resolution...
[02:46:36:1158477142 - MSG] ** 2560x1600 will work.
[02:46:36:1158477165 - MSG] ** 1920x1200 will work.
[02:46:36:1158477187 - MSG] ** 1680x1050 will work.
[02:46:36:1158477209 - MSG] ** 1440x900 will work.
[02:46:36:1158477231 - MSG] ** 1280x1024 will work.
[02:46:36:1158477253 - MSG] ** 1024x768 is too small, using last good size.
[02:46:36:1158477275 - MSG] ** Found a resolution: 1280x1024
[02:46:36:1158477299 - MSG] ** filename: /usr/share/images/xsplash/bg_1280x1024.jpg
[02:46:36:1158477324 - MSG] get_logo_filename(): looking for the best logo for screen width...
[02:46:36:1158477350 - MSG] ** Chose `small'
[02:46:36:1158477372 - MSG] ** logo filename is: /usr/share/images/xsplash/logo_small.png
[02:46:36:1158477395 - MSG] get_throbber_filename(): looking for the best throbber for screen width...
[02:46:36:1158477420 - MSG] ** Chose `small'
[02:46:36:1158477442 - MSG] ** throbber filename is: /usr/share/images/xsplash/throbber_small.png
[02:46:36:1158477465 - MSG] background_image = /usr/share/images/xsplash/bg_1280x1024.jpg
[02:46:36:1158477487 - MSG] logo_image = /usr/share/images/xsplash/logo_small.png
[02:46:36:1158477509 - MSG] throbber_image = /usr/share/images/xsplash/throbber_small.png
[02:46:36:1158494635 - MSG] get_logo_filename(): user provided a logo on the command line; using that
[02:46:36:1158494724 - MSG] get_throbber_filename(): user provided a throbber on the command line; using that
[02:46:36:1158783070 - MSG] throbber started (50 frames)
[02:46:42:1152255362 - MSG] received a new signal to wait for: gnome-panel
[02:46:42:1152255466 - MSG] adding signal `gnome-panel'
[02:46:44:1150324026 - MSG] received a new signal to wait for: nautilus
[02:46:44:1150324116 - MSG] adding signal `nautilus'
[02:46:44:1150324162 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945376 - MSG] received a new signal to wait for: netbook-launcher
[02:46:46:1148945469 - MSG] adding signal `netbook-launcher'
[02:46:46:1148945494 - MSG] tmp->data is `nautilus'
[02:46:46:1148945516 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945538 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945560 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945581 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945603 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945624 - MSG] tmp->data is `gnome-panel'
[02:46:46:1148945645 - MSG] tmp->data is `gnome-panel'
(continues until I kill xsplash)
Added some extra debug messages around the for loop at line 820 in xsplash.c and it looks like the problem is with how we iterate through the signal list: 36:1158476869 - MSG] xsplash started 36:1158477102 - MSG] get_background_ filename( ): looking for appropriate resolution... 36:1158477142 - MSG] ** 2560x1600 will work. 36:1158477165 - MSG] ** 1920x1200 will work. 36:1158477187 - MSG] ** 1680x1050 will work. 36:1158477209 - MSG] ** 1440x900 will work. 36:1158477231 - MSG] ** 1280x1024 will work. 36:1158477253 - MSG] ** 1024x768 is too small, using last good size. 36:1158477275 - MSG] ** Found a resolution: 1280x1024 36:1158477299 - MSG] ** filename: /usr/share/ images/ xsplash/ bg_1280x1024. jpg 36:1158477324 - MSG] get_logo_ filename( ): looking for the best logo for screen width... 36:1158477350 - MSG] ** Chose `small' 36:1158477372 - MSG] ** logo filename is: /usr/share/ images/ xsplash/ logo_small. png 36:1158477395 - MSG] get_throbber_ filename( ): looking for the best throbber for screen width... 36:1158477420 - MSG] ** Chose `small' 36:1158477442 - MSG] ** throbber filename is: /usr/share/ images/ xsplash/ throbber_ small.png 36:1158477465 - MSG] background_image = /usr/share/ images/ xsplash/ bg_1280x1024. jpg 36:1158477487 - MSG] logo_image = /usr/share/ images/ xsplash/ logo_small. png 36:1158477509 - MSG] throbber_image = /usr/share/ images/ xsplash/ throbber_ small.png 36:1158494635 - MSG] get_logo_ filename( ): user provided a logo on the command line; using that 36:1158494724 - MSG] get_throbber_ filename( ): user provided a throbber on the command line; using that 36:1158783070 - MSG] throbber started (50 frames) 42:1152255362 - MSG] received a new signal to wait for: gnome-panel 42:1152255466 - MSG] adding signal `gnome-panel' 44:1150324026 - MSG] received a new signal to wait for: nautilus 44:1150324116 - MSG] adding signal `nautilus' 44:1150324162 - MSG] tmp->data is `gnome-panel' 46:1148945376 - MSG] received a new signal to wait for: netbook-launcher 46:1148945469 - MSG] adding signal `netbook-launcher' 46:1148945494 - MSG] tmp->data is `nautilus' 46:1148945516 - MSG] tmp->data is `gnome-panel' 46:1148945538 - MSG] tmp->data is `gnome-panel' 46:1148945560 - MSG] tmp->data is `gnome-panel' 46:1148945581 - MSG] tmp->data is `gnome-panel' 46:1148945603 - MSG] tmp->data is `gnome-panel' 46:1148945624 - MSG] tmp->data is `gnome-panel' 46:1148945645 - MSG] tmp->data is `gnome-panel'
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
[02:46:
(continues until I kill xsplash)