summaryrefslogtreecommitdiffstats
path: root/src/property_list_service.c
diff options
context:
space:
mode:
authorGravatar BALATON Zoltan2016-07-12 23:01:47 +0200
committerGravatar BALATON Zoltan2017-04-08 15:48:07 +0200
commit5a8449a391d2cc848f55cfb4406bad4ded0bd138 (patch)
tree8597f3d58c6fcc5747c805806525ef877ea340d9 /src/property_list_service.c
parent45fda819e1aae3cacf25a04b9fe22cd6ddc61f5a (diff)
downloadlibimobiledevice-5a8449a391d2cc848f55cfb4406bad4ded0bd138.tar.gz
libimobiledevice-5a8449a391d2cc848f55cfb4406bad4ded0bd138.tar.bz2
Propagate lower level errors to callers instead of returning unknown
error for most failures
Diffstat (limited to 'src/property_list_service.c')
-rw-r--r--src/property_list_service.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/property_list_service.c b/src/property_list_service.c
index a5bdf9b..f411699 100644
--- a/src/property_list_service.c
+++ b/src/property_list_service.c
@@ -98,7 +98,8 @@ LIBIMOBILEDEVICE_API property_list_service_error_t property_list_service_client_
98 * @return PROPERTY_LIST_SERVICE_E_SUCCESS on success, 98 * @return PROPERTY_LIST_SERVICE_E_SUCCESS on success,
99 * PROPERTY_LIST_SERVICE_E_INVALID_ARG when one or more parameters are 99 * PROPERTY_LIST_SERVICE_E_INVALID_ARG when one or more parameters are
100 * invalid, PROPERTY_LIST_SERVICE_E_PLIST_ERROR when dict is not a valid 100 * invalid, PROPERTY_LIST_SERVICE_E_PLIST_ERROR when dict is not a valid
101 * plist, or PROPERTY_LIST_SERVICE_E_UNKNOWN_ERROR when an unspecified 101 * plist, PROPERTY_LIST_SERVICE_E_MUX_ERROR when a communication error
102 * occurs, or PROPERTY_LIST_SERVICE_E_UNKNOWN_ERROR when an unspecified
102 * error occurs. 103 * error occurs.
103 */ 104 */
104static property_list_service_error_t internal_plist_send(property_list_service_client_t client, plist_t plist, int binary) 105static property_list_service_error_t internal_plist_send(property_list_service_client_t client, plist_t plist, int binary)
@@ -140,6 +141,7 @@ static property_list_service_error_t internal_plist_send(property_list_service_c
140 } 141 }
141 if (bytes <= 0) { 142 if (bytes <= 0) {
142 debug_info("ERROR: sending to device failed."); 143 debug_info("ERROR: sending to device failed.");
144 res = PROPERTY_LIST_SERVICE_E_MUX_ERROR;
143 } 145 }
144 146
145 free(content); 147 free(content);