Fix:binding_dbus:Correct argument handling for navit zoom command
authormartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Tue, 15 Dec 2009 09:56:00 +0000 (09:56 +0000)
committermartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Tue, 15 Dec 2009 09:56:00 +0000 (09:56 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk/navit@2869 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/binding/dbus/binding_dbus.c

index cd0616e..d9f1d7b 100644 (file)
@@ -1028,7 +1028,7 @@ static DBusHandlerResult
 request_navit_zoom(DBusConnection *connection, DBusMessage *message)
 {
        int factor;
-       struct point p;
+       struct point p, *pp=NULL;
        struct navit *navit;
        DBusMessageIter iter;
 
@@ -1046,12 +1046,13 @@ request_navit_zoom(DBusConnection *connection, DBusMessage *message)
                dbus_message_iter_next(&iter);
                if (!point_get_from_message(message, &iter, &p))
                        return dbus_error_invalid_parameter(connection, message);
+               pp=&p;
        }
 
        if (factor > 1)
-               navit_zoom_in(navit, factor, &p);
+               navit_zoom_in(navit, factor, pp);
        else if (factor < -1)
-               navit_zoom_out(navit, 0-factor, &p);
+               navit_zoom_out(navit, 0-factor, pp);
 
        return empty_reply(connection, message);