diff options
| -rw-r--r-- | src/ideviceinstaller.c | 41 | 
1 files changed, 8 insertions, 33 deletions
| diff --git a/src/ideviceinstaller.c b/src/ideviceinstaller.c index 5e59e8e..5dcd900 100644 --- a/src/ideviceinstaller.c +++ b/src/ideviceinstaller.c @@ -126,7 +126,7 @@ static void print_apps_header()  {  	/* output app details header */  	printf("%s", "CFBundleIdentifier"); -	printf(", %s", "CFBundleVersion"); +	printf(", %s", "CFBundleShortVersionString");  	printf(", %s", "CFBundleDisplayName");  	printf("\n");  } @@ -136,41 +136,15 @@ static void print_apps(plist_t apps)  	uint32_t i = 0;  	for (i = 0; i < plist_array_get_size(apps); i++) {  		plist_t app = plist_array_get_item(apps, i); -		plist_t p_bundle_identifier = plist_dict_get_item(app, "CFBundleIdentifier"); -		char *s_bundle_identifier = NULL; -		char *s_display_name = NULL; -		char *s_version = NULL; +		plist_t bundle_identifier = plist_dict_get_item(app, "CFBundleIdentifier");  		plist_t display_name = plist_dict_get_item(app, "CFBundleDisplayName"); -		plist_t version = plist_dict_get_item(app, "CFBundleVersion"); - -		if (p_bundle_identifier) { -			plist_get_string_val(p_bundle_identifier, &s_bundle_identifier); -		} -		if (!s_bundle_identifier) { -			fprintf(stderr, "ERROR: Failed to get bundle identifier!\n"); -			break; -		} - -		if (version) { -			plist_get_string_val(version, &s_version); -		} -		if (display_name) { -			plist_get_string_val(display_name, &s_display_name); -		} -		if (!s_display_name) { -			s_display_name = strdup(s_bundle_identifier); -		} +		plist_t version = plist_dict_get_item(app, "CFBundleShortVersionString");  		/* output app details */ -		printf("%s", s_bundle_identifier); -		if (s_version) { -			printf(", \"%s\"", s_version); -			free(s_version); -		} -		printf(", \"%s\"", s_display_name); +		printf("%s", plist_get_string_ptr(bundle_identifier, NULL)); +		printf(", \"%s\"", (version) ? plist_get_string_ptr(version, NULL) : ""); +		printf(", \"%s\"", (display_name) ? plist_get_string_ptr(display_name, NULL) : plist_get_string_ptr(bundle_identifier, NULL));  		printf("\n"); -		free(s_display_name); -		free(s_bundle_identifier);  	}  } @@ -795,6 +769,7 @@ run_again:  			instproxy_client_options_set_return_attributes(client_opts,  				"CFBundleIdentifier",  				"CFBundleDisplayName", +				"CFBundleShortVersionString",  				"CFBundleVersion",  				"StaticDiskUsage",  				"DynamicDiskUsage", @@ -1251,7 +1226,7 @@ run_again:  				plist_t dispName =  					plist_dict_get_item(node, "CFBundleDisplayName");  				plist_t version = -					plist_dict_get_item(node, "CFBundleVersion"); +					plist_dict_get_item(node, "CFBundleShortVersionString");  				if (dispName) {  					plist_get_string_val(dispName, &s_dispName);  				} | 
