add:osd: navit tries src="" as an absolute path for osd buttons if it can't find...
authorsingesang <singesang@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Mon, 23 Feb 2009 00:55:26 +0000 (00:55 +0000)
committersingesang <singesang@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Mon, 23 Feb 2009 00:55:26 +0000 (00:55 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk/navit@2066 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/osd/core/osd_core.c

index 79953bd..bfaf7a6 100644 (file)
@@ -454,7 +454,12 @@ osd_button_new(struct navit *nav, struct osd_methods *meth,
                dbg(0, "no src\n");
                goto error;
        }
+
        this->src = g_strjoin(NULL, getenv("NAVIT_SHAREDIR"), "/xpm/", attr->u.str, NULL);
+    // TODO make ~ and/or $HOME work too
+    if (!file_exists(this->src))
+        this->src = g_strjoin(NULL, attr->u.str, NULL);
+
        navit_add_callback(nav, this->navit_init_cb = callback_new_attr_1(callback_cast (osd_button_init), attr_navit, this));
 
        return (struct osd_priv *) this;