From 2954744378a7c54c5d0d511b5c960492b813dae1 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Thu, 27 May 2010 14:24:48 +0000 Subject: [PATCH] Trying to fix SMS reception --- src/gsm.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/gsm.c b/src/gsm.c index 9a58d87..430598a 100644 --- a/src/gsm.c +++ b/src/gsm.c @@ -1403,8 +1403,8 @@ static int _gsm_trigger_cmgr(GSM * gsm, char const * result) return 0; /* we need to wait for the next line */ } /* PDU mode support */ - else if(sscanf(result, "%u,%u,%u", &mbox, &alpha, length) != 3 - && sscanf(result, "%u,,%u", &mbox, length) != 2) + if(sscanf(result, "%u,%u,%u", &mbox, &alpha, length) == 3 + || sscanf(result, "%u,,%u", &mbox, length) == 2) return 0; /* message content */ if(*length == 0) /* XXX assumes this is text mode */ @@ -1440,6 +1440,9 @@ static unsigned char * _cmgr_pdu_parse(char const * pdu) unsigned char rest; int shift; +#ifdef DEBUG + fprintf(stderr, "DEBUG: %s(\"%s\")\n", __func__, pdu); +#endif len = strlen(pdu); if(sscanf(pdu, "%02X", &smscl) != 1) /* SMSC length */ return NULL;