Refactor out note deserialization

Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
This commit is contained in:
Lukas Fleischer 2011-08-02 21:36:25 +02:00
parent c7b56ca556
commit bc97d60ef2
3 changed files with 12 additions and 8 deletions

View File

@ -753,6 +753,7 @@ void mem_stats (void);
void edit_note (char **, char *); void edit_note (char **, char *);
void view_note (char *, char *); void view_note (char *, char *);
void erase_note (char **, enum eraseflg); void erase_note (char **, enum eraseflg);
void note_read (char *, FILE *);
/* notify.c */ /* notify.c */
int notify_time_left (void); int notify_time_left (void);

View File

@ -1226,10 +1226,8 @@ io_load_app (void)
c = getc (data_file); c = getc (data_file);
if (c == '>') if (c == '>')
{ {
(void)fgets (note, NOTESIZ + 1, data_file); note_read (note, data_file);
note[NOTESIZ] = '\0';
notep = note; notep = note;
getc (data_file);
} }
else else
{ {
@ -1324,11 +1322,7 @@ io_load_todo (void)
/* Now read the attached note, if any. */ /* Now read the attached note, if any. */
c = getc (data_file); c = getc (data_file);
if (c == '>') if (c == '>')
{ note_read (note, data_file);
(void)fgets (note, NOTESIZ + 1, data_file);
note[NOTESIZ] = '\0';
getc (data_file);
}
else else
note[0] = '\0'; note[0] = '\0';
/* Then read todo description. */ /* Then read todo description. */

View File

@ -88,3 +88,12 @@ erase_note (char **note, enum eraseflg flag)
mem_free (*note); mem_free (*note);
*note = NULL; *note = NULL;
} }
/* Read a serialized note file name from a stream and deserialize it. */
void
note_read (char *buffer, FILE *fp)
{
(void)fgets (buffer, NOTESIZ + 1, fp);
buffer[NOTESIZ] = '\0';
getc (fp);
}