SDB: fix service parsing bug 09/12909/2
authorho.namkoong <ho.namkoong@samsung.com>
Tue, 26 Nov 2013 02:00:31 +0000 (11:00 +0900)
committerho.namkoong <ho.namkoong@samsung.com>
Tue, 26 Nov 2013 02:04:06 +0000 (11:04 +0900)
if serial contains ':', service string cannot be parsed normally

Change-Id: Icfb13b31ea6cc6a42a895f389dfa2c8e5306f56f
Signed-off-by: ho.namkoong <ho.namkoong@samsung.com>
src/sockets.c

index 1ef12c343c5b896c9ff9fd2e87389e347e31c08f..0f85310d283338373ece9d5e33fe8aaf3c5cf9a2 100755 (executable)
@@ -618,6 +618,20 @@ static int parse_host_service(char* host_str, char** service_ptr, TRANSPORT** t,
             *err_str = (char*)TRANSPORT_ERR_TARGET_NOT_FOUND;
             return 0;
         }
+
+        char* new_end = end + 1;
+        if(isdigit(*new_end)) {
+            while(1) {
+                new_end++;
+                if(!isdigit(*new_end)) {
+                    if(*new_end == ':') {
+                        end = new_end;
+                    }
+                    break;
+                }
+            }
+        }
+
         *end = '\0';
         *service_ptr = end + 1;
         *t = acquire_one_transport(kTransportAny, serial, err_str);