summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/plugins/calendar.c26
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;