summaryrefslogtreecommitdiffabout
path: root/gammu/emb/gammu/gammu.c
Side-by-side diff
Diffstat (limited to 'gammu/emb/gammu/gammu.c') (more/less context) (ignore whitespace changes)
-rw-r--r--gammu/emb/gammu/gammu.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gammu/emb/gammu/gammu.c b/gammu/emb/gammu/gammu.c
index a3b93a8..997485a 100644
--- a/gammu/emb/gammu/gammu.c
+++ b/gammu/emb/gammu/gammu.c
@@ -4627,6 +4627,7 @@ static void Restore(int argc, char *argv[])
}
DoRestore = false;
if (Backup.Calendar[0] != NULL) {
+ DoRestore = true;
/* N6110 doesn't support getting calendar status */
error = Phone->GetNextCalendar(&s,&Calendar,true);
if (error == ERR_NONE || error == ERR_INVALIDLOCATION || error == ERR_EMPTY) {
@@ -4678,6 +4679,8 @@ static void Restore(int argc, char *argv[])
if (Backup.ToDo[0] != NULL) {
error = Phone->GetToDoStatus(&s,&ToDoStatus);
if (error == ERR_NONE) {
+ error == ERR_NOTSUPPORTED;
+ DoRestore = true;
max = 0;
while (Backup.ToDo[max]!=NULL) max++;
printmsgerr("%i entries in backup file\n",max);
@@ -4686,8 +4689,10 @@ static void Restore(int argc, char *argv[])
}
}
if (DoRestore) {
+ if ( max > 0 ) {
ToDo = *Backup.ToDo[0];
error = Phone->SetToDo(&s,&ToDo);
+ }
}
if (DoRestore && (error == ERR_NOTSUPPORTED || error == ERR_NOTIMPLEMENTED)) {
printmsgerr("Deleting old ToDo: ");
@@ -8374,7 +8379,6 @@ int main(int argc, char *argv[])
con->DefaultConnection = false;
}
#endif
- argc = argc-3;
/* Do we have enough parameters? */