diff options
author | Lukas Fleischer <calcurse@cryptocrack.de> | 2011-08-02 21:36:25 +0200 |
---|---|---|
committer | Lukas Fleischer <calcurse@cryptocrack.de> | 2011-10-05 12:25:47 +0200 |
commit | bc97d60ef2cacfe79875e6c604bf3f0e6d07fbd9 (patch) | |
tree | 97d70f3e80f0791f880eee5fdade6d15b59c9017 | |
parent | c7b56ca556f4ffd3e6fe941356c6abc4d16967d4 (diff) | |
download | calcurse-bc97d60ef2cacfe79875e6c604bf3f0e6d07fbd9.tar.gz calcurse-bc97d60ef2cacfe79875e6c604bf3f0e6d07fbd9.zip |
Refactor out note deserialization
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
-rw-r--r-- | src/calcurse.h | 1 | ||||
-rw-r--r-- | src/io.c | 10 | ||||
-rw-r--r-- | src/note.c | 9 |
3 files changed, 12 insertions, 8 deletions
diff --git a/src/calcurse.h b/src/calcurse.h index 8b82422..8aa5c4a 100644 --- a/src/calcurse.h +++ b/src/calcurse.h @@ -753,6 +753,7 @@ void mem_stats (void); void edit_note (char **, char *); void view_note (char *, char *); void erase_note (char **, enum eraseflg); +void note_read (char *, FILE *); /* notify.c */ int notify_time_left (void); @@ -1226,10 +1226,8 @@ io_load_app (void) c = getc (data_file); if (c == '>') { - (void)fgets (note, NOTESIZ + 1, data_file); - note[NOTESIZ] = '\0'; + note_read (note, data_file); notep = note; - getc (data_file); } else { @@ -1324,11 +1322,7 @@ io_load_todo (void) /* Now read the attached note, if any. */ c = getc (data_file); if (c == '>') - { - (void)fgets (note, NOTESIZ + 1, data_file); - note[NOTESIZ] = '\0'; - getc (data_file); - } + note_read (note, data_file); else note[0] = '\0'; /* Then read todo description. */ @@ -88,3 +88,12 @@ erase_note (char **note, enum eraseflg flag) mem_free (*note); *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); +} |