diff options
author | sleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2013-05-01 22:18:14 +0000 |
---|---|---|
committer | sleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2013-05-01 22:18:14 +0000 |
commit | 3321dbc6df4592abab28482f87599c06fa3f67c6 (patch) | |
tree | 03009c3c2b1fdafdaeaa68191d8a9eab37c05f1b | |
parent | 10da0c80bac4418e1302c5390190fd6d83776f8c (diff) | |
download | navit-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
-rw-r--r-- | navit/vehicle.c | 13 |
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, ¢er, 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) |