diff options
-rw-r--r-- | apps/plugins/calendar.c | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/apps/plugins/calendar.c b/apps/plugins/calendar.c index 92aac21f7a..f3ee8d82db 100644 --- a/apps/plugins/calendar.c +++ b/apps/plugins/calendar.c | |||
@@ -310,7 +310,7 @@ static bool save_memo(int changed, bool new_mod, struct shown *shown) | |||
310 | { | 310 | { |
311 | int fp,fq; | 311 | int fp,fq; |
312 | fp = rb->open("/.rockbox/.memo",O_RDONLY | O_CREAT); | 312 | fp = rb->open("/.rockbox/.memo",O_RDONLY | O_CREAT); |
313 | fq = rb->open("/.rockbox/~temp",O_RDWR | O_CREAT | O_TRUNC); | 313 | fq = rb->creat("/.rockbox/~temp", 0); |
314 | if ( (fq != -1) && (fp != -1) ) | 314 | if ( (fq != -1) && (fp != -1) ) |
315 | { | 315 | { |
316 | int i; | 316 | int i; |
@@ -323,19 +323,13 @@ static bool save_memo(int changed, bool new_mod, struct shown *shown) | |||
323 | } | 323 | } |
324 | if (new_mod) | 324 | if (new_mod) |
325 | { | 325 | { |
326 | rb->snprintf(temp, 3, "%02d", memos[changed].day); | 326 | rb->fprintf(fq, "%02d%02d%04d%01d%01d%s\n", |
327 | rb->write(fq,temp,2); | 327 | memos[changed].day, |
328 | rb->snprintf(temp, 3, "%02d", memos[changed].month); | 328 | memos[changed].month, |
329 | rb->write(fq,temp,2); | 329 | memos[changed].year, |
330 | rb->snprintf(temp, 5, "%04d", memos[changed].year); | 330 | memos[changed].wday, |
331 | rb->write(fq,temp,4); | 331 | memos[changed].type, |
332 | rb->snprintf(temp, 2, "%01d", memos[changed].wday); | 332 | memos[changed].message); |
333 | rb->write(fq,temp,1); | ||
334 | rb->snprintf(temp, 2, "%01d", memos[changed].type); | ||
335 | rb->write(fq,temp,1); | ||
336 | rb->snprintf(temp, rb->strlen(memos[changed].message)+1, | ||
337 | "%s\n", memos[changed].message); | ||
338 | rb->write(fq,temp, rb->strlen(temp)); | ||
339 | } | 333 | } |
340 | rb->lseek(fp, memos[changed].file_pointer_end, SEEK_SET); | 334 | rb->lseek(fp, memos[changed].file_pointer_end, SEEK_SET); |
341 | for (i = memos[changed].file_pointer_end; | 335 | for (i = memos[changed].file_pointer_end; |
@@ -345,7 +339,7 @@ static bool save_memo(int changed, bool new_mod, struct shown *shown) | |||
345 | rb->write(fq,temp,1); | 339 | rb->write(fq,temp,1); |
346 | } | 340 | } |
347 | rb->close(fp); | 341 | rb->close(fp); |
348 | fp = rb->open("/.rockbox/.memo",O_WRONLY | O_CREAT | O_TRUNC); | 342 | fp = rb->creat("/.rockbox/.memo", 0); |
349 | rb->lseek(fp, 0, SEEK_SET); | 343 | rb->lseek(fp, 0, SEEK_SET); |
350 | rb->lseek(fq, 0, SEEK_SET); | 344 | rb->lseek(fq, 0, SEEK_SET); |
351 | for (i = 0; i < rb->filesize(fq); i++) | 345 | for (i = 0; i < rb->filesize(fq); i++) |
@@ -372,7 +366,7 @@ static void add_memo(struct shown *shown, int type) | |||
372 | if (rb->kbd_input(memos[memos_in_memory].message, | 366 | if (rb->kbd_input(memos[memos_in_memory].message, |
373 | sizeof memos[memos_in_memory].message) != -1) | 367 | sizeof memos[memos_in_memory].message) != -1) |
374 | { | 368 | { |
375 | if (memos[memos_in_memory].message != "") | 369 | if (rb->strlen(memos[memos_in_memory].message)) |
376 | { | 370 | { |
377 | memos[memos_in_memory].file_pointer_start = 0; | 371 | memos[memos_in_memory].file_pointer_start = 0; |
378 | memos[memos_in_memory].file_pointer_end = 0; | 372 | memos[memos_in_memory].file_pointer_end = 0; |