diff options
-rw-r--r-- | tools/idevicedebug.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/tools/idevicedebug.c b/tools/idevicedebug.c index 850a4b1..dcdb6b6 100644 --- a/tools/idevicedebug.c +++ b/tools/idevicedebug.c @@ -328,12 +328,17 @@ int main(int argc, char *argv[]) instproxy_client_get_path_for_bundle_identifier(instproxy_client, bundle_identifier, &path); instproxy_client_free(instproxy_client); instproxy_client = NULL; - if (container && plist_get_node_type(container) == PLIST_STRING) { - plist_get_string_val(container, &working_directory); - debug_info("working_directory: %s\n", working_directory); - } else { - fprintf(stderr, "Could not determine container path for bundle identifier %s.\n", bundle_identifier); - goto cleanup; + + if (container) { + if (plist_get_node_type(container) == PLIST_STRING) { + plist_get_string_val(container, &working_directory); + debug_info("working_directory: %s\n", working_directory); + plist_free(container); + } else { + plist_free(container); + fprintf(stderr, "Could not determine container path for bundle identifier %s.\n", bundle_identifier); + goto cleanup; + } } /* start and connect to debugserver */ |