diff options
Diffstat (limited to 'tools/idevicebackup2.c')
-rw-r--r-- | tools/idevicebackup2.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/tools/idevicebackup2.c b/tools/idevicebackup2.c index cdce515..12d6083 100644 --- a/tools/idevicebackup2.c +++ b/tools/idevicebackup2.c | |||
@@ -131,21 +131,15 @@ static void mobilebackup_afc_get_file_contents(afc_client_t afc, const char *fil | |||
131 | return; | 131 | return; |
132 | } | 132 | } |
133 | 133 | ||
134 | char **fileinfo = NULL; | 134 | plist_t fileinfo = NULL; |
135 | uint32_t fsize = 0; | 135 | uint32_t fsize = 0; |
136 | 136 | ||
137 | afc_get_file_info(afc, filename, &fileinfo); | 137 | afc_get_file_info_plist(afc, filename, &fileinfo); |
138 | if (!fileinfo) { | 138 | if (!fileinfo) { |
139 | return; | 139 | return; |
140 | } | 140 | } |
141 | int i; | 141 | fsize = plist_dict_get_uint(fileinfo, "st_size"); |
142 | for (i = 0; fileinfo[i]; i+=2) { | 142 | plist_free(fileinfo); |
143 | if (!strcmp(fileinfo[i], "st_size")) { | ||
144 | fsize = atol(fileinfo[i+1]); | ||
145 | break; | ||
146 | } | ||
147 | } | ||
148 | afc_dictionary_free(fileinfo); | ||
149 | 143 | ||
150 | if (fsize == 0) { | 144 | if (fsize == 0) { |
151 | return; | 145 | return; |