aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2014-09-10 14:12:53 +0200
committerMarc André Tanner <mat@brain-dump.org>2014-09-10 14:12:53 +0200
commitd1eb042871f2da438286f15c65b0020bdac10f0e (patch)
tree4b9a5adbb68c52481a5c0afa14b6c090bd4164bd
parent17a71a69823e93fc4ef8495e6efb93cfdcdf66e1 (diff)
downloadvis-d1eb042871f2da438286f15c65b0020bdac10f0e.tar.gz
vis-d1eb042871f2da438286f15c65b0020bdac10f0e.tar.xz
If text has been created from an empty file, store filename upon first save
-rw-r--r--text.c2
-rw-r--r--text.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/text.c b/text.c
index 9879f98..39d47cc 100644
--- a/text.c
+++ b/text.c
@@ -610,6 +610,8 @@ int text_save(Text *txt, const char *filename) {
return -1;
txt->saved_action = txt->undo;
text_snapshot(txt);
+ if (!txt->filename)
+ txt->filename = strdup(filename);
return 0;
err:
close(fd);
diff --git a/text.h b/text.h
index e133af0..bedd16b 100644
--- a/text.h
+++ b/text.h
@@ -27,6 +27,7 @@ typedef struct {
text_iterator_next(&it))
Text *text_load(const char *file);
+/* the filename from which this text was loaded or first saved to */
const char *text_filename(Text*);
bool text_insert(Text*, size_t pos, const char *data);
bool text_insert_raw(Text*, size_t pos, const char *data, size_t len);