diff options
author | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2016-12-29 19:46:14 +0100 |
---|---|---|
committer | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2016-12-29 19:46:14 +0100 |
commit | 8fc4ebed2b2fd094f09f329fd284b4ce916271c7 (patch) | |
tree | 5f22d9e856061a625df76839e1fe0decf95df3c3 /sms.c | |
parent | 845b681b415685b49e3476bd38792f3fc1181e4d (diff) | |
download | hardware_ril_samsung-ril-8fc4ebed2b2fd094f09f329fd284b4ce916271c7.zip hardware_ril_samsung-ril-8fc4ebed2b2fd094f09f329fd284b4ce916271c7.tar.gz hardware_ril_samsung-ril-8fc4ebed2b2fd094f09f329fd284b4ce916271c7.tar.bz2 |
sms: Also check if RIL_REQUEST_SEND_SMS_EXPECT_MORE was already handled
This hopefully finally fixes sending of longer SMS messages.
Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
Diffstat (limited to 'sms.c')
-rw-r--r-- | sms.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -194,7 +194,7 @@ complete: int ril_request_send_sms(void *data, size_t size, RIL_Token token) { - struct ril_request *request; + struct ril_request *request_send_sms, *request_send_sms_expect_more; char **values = NULL; void *smsc = NULL; size_t smsc_size = 0; @@ -210,8 +210,9 @@ int ril_request_send_sms(void *data, size_t size, RIL_Token token) if (rc < 0) return RIL_REQUEST_UNHANDLED; - request = ril_request_find_request_status(RIL_REQUEST_SEND_SMS, RIL_REQUEST_HANDLED); - if (request != NULL) + request_send_sms = ril_request_find_request_status(RIL_REQUEST_SEND_SMS, RIL_REQUEST_HANDLED); + request_send_sms_expect_more = ril_request_find_request_status(RIL_REQUEST_SEND_SMS_EXPECT_MORE, RIL_REQUEST_HANDLED); + if (request_send_sms != NULL || request_send_sms_expect_more != NULL) return RIL_REQUEST_UNHANDLED; values = (char **) data; |