diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2012-09-13 09:42:55 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2012-09-13 09:42:55 +0000 |
commit | 928324c151bc3529f6c922d41fd7f25d4bcc0310 (patch) | |
tree | dfeed21fe605a231f6c511e103a41150cc79856a /navit/osd | |
parent | f2b4bb2fa090d24934abff31a37765ac5d018801 (diff) | |
download | navit-svn-928324c151bc3529f6c922d41fd7f25d4bcc0310.tar.gz |
Fix:osd_core:Don't stop odometer on reset command
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5225 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/osd')
-rw-r--r-- | navit/osd/core/osd_core.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/navit/osd/core/osd_core.c b/navit/osd/core/osd_core.c index 41988d2f..4f875fd7 100644 --- a/navit/osd/core/osd_core.c +++ b/navit/osd/core/osd_core.c @@ -81,7 +81,7 @@ struct osd_priv_common { struct odometer; int set_std_osd_attr(struct osd_priv_common*opc, struct attr*the_attr); -static void osd_odometer_reset(struct osd_priv_common *opc, int force); +static void osd_odometer_reset(struct osd_priv_common *opc, int flags); static void osd_cmd_odometer_reset(struct navit *this, char *function, struct attr **in, struct attr ***out, int *valid); static void osd_odometer_draw(struct osd_priv_common *opc, struct navit *nav, struct vehicle *v); static struct osd_text_item * oti_new(struct osd_text_item * parent); @@ -524,7 +524,7 @@ osd_cmd_odometer_reset(struct navit *this, char *function, struct attr **in, str GList* list = odometer_list; while(list) { if(!strcmp(((struct odometer*)((struct osd_priv_common *)(list->data))->data)->name,in[0]->u.str)) { - osd_odometer_reset(list->data,1); + osd_odometer_reset(list->data,3); osd_odometer_draw(list->data,this,NULL); } list = g_list_next(list); @@ -775,12 +775,13 @@ static void osd_odometer_draw(struct osd_priv_common *opc, struct navit *nav, st static void -osd_odometer_reset(struct osd_priv_common *opc, int force) +osd_odometer_reset(struct osd_priv_common *opc, int flags) { struct odometer *this = (struct odometer *)opc->data; - if(!this->bDisableReset || force) { - this->bActive = 0; + if(!this->bDisableReset || (flags & 1)) { + if (!(flags & 2)) + this->bActive = 0; this->sum_dist = 0; this->sum_time = 0; this->max_speed = 0; |