Opened 8 years ago
#1292 new defect/bug
OSD behavior discrepancy
Reported by: | kazer | Owned by: | Singesang |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | osd/core | Version: | git master |
Severity: | normal | Keywords: | |
Cc: |
Description
Robert is working on a new plugin to add mp3 playback functionality, and he stumbled on an odd behavior discrepancy.
The code is available here : https://github.com/pohlinkzei/mp3player
Robert is currently developing on a 32bits Debian virtual machine.
When running his code on a Debian 7.8 i386, the OSD fails to display with this errors in the logs:
(navit:427): Gdk-CRITICAL **: _gdk_pixmap_new: assertion `(width != 0) && (height != 0)' failed (navit:427): Gdk-CRITICAL **: IA__gdk_draw_drawable: assertion `GDK_IS_DRAWABLE (drawable)' failed (navit:427): Gdk-CRITICAL **: IA__gdk_draw_drawable: assertion `GDK_IS_DRAWABLE (src)' failed (navit:427): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
When trying to run his code on x86_64 or raspberry pi, this line :
osd_fill_with_bgcolor(&this->osd_item);
will make navit complain at runtime :
undefined symbol: osd_fill_with_bgcolor'
but it *will* run correctly on i386.
The workaround for i386 is to specify the size of the osd ( w=xxx h=xxx ). Commenting the call to osd_fill_with_bgcolor allows the plugin to run correctly without having to specify the OSD size in the config file.
I'm puzzled as why we have this behavior and we will need to investigate more.