summaryrefslogtreecommitdiff
path: root/navit/vehicle.c
diff options
context:
space:
mode:
authorsleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220>2013-05-01 22:18:14 +0000
committersleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220>2013-05-01 22:18:14 +0000
commit3321dbc6df4592abab28482f87599c06fa3f67c6 (patch)
tree03009c3c2b1fdafdaeaa68191d8a9eab37c05f1b /navit/vehicle.c
parent10da0c80bac4418e1302c5390190fd6d83776f8c (diff)
downloadnavit-3321dbc6df4592abab28482f87599c06fa3f67c6.tar.gz
Fix:core:Set default name for vehicle if no name is specified in navit.xml.
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5466 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/vehicle.c')
-rw-r--r--navit/vehicle.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/navit/vehicle.c b/navit/vehicle.c
index 757f1eeaa..5ccfb524c 100644
--- a/navit/vehicle.c
+++ b/navit/vehicle.c
@@ -66,6 +66,7 @@ struct vehicle {
struct object_func vehicle_func;
+static void vehicle_set_default_name(struct vehicle *this);
static void vehicle_draw_do(struct vehicle *this_, int lazy);
static void vehicle_log_nmea(struct vehicle *this_, struct log *log);
static void vehicle_log_gpx(struct vehicle *this_, struct log *log);
@@ -129,6 +130,7 @@ vehicle_new(struct attr *parent, struct attr **attrs)
center.x=0;
center.y=0;
transform_setup(this_->trans, &center, 16, 0);
+ vehicle_set_default_name(this_);
dbg(1, "leave\n");
this_->log_to_cb=g_hash_table_new(NULL,NULL);
@@ -392,6 +394,17 @@ vehicle_get_cursor_data(struct vehicle *this, struct point *pnt, int *angle, int
return 1;
}
+static void vehicle_set_default_name(struct vehicle *this_)
+{
+ struct attr default_name;
+ if (!attr_search(this_->attrs, NULL, attr_name)) {
+ default_name.type=attr_name;
+ default_name.u.str="Unnamed vehicle";
+ this_->attrs=attr_generic_set_attr(this_->attrs, &default_name);
+ dbg(0, "Incomplete vehicle definition: missing attribute 'name'. Default name set.\n");
+ }
+}
+
static void
vehicle_draw_do(struct vehicle *this_, int lazy)