From 0ca2d7ab6883abadb244a452525d59ce6d324f82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Fri, 12 Sep 2014 14:18:22 +0200 Subject: Introduce text_filename_set This can be used to associate a given filename to a currently unnamed text. --- text.c | 8 ++++++-- text.h | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/text.c b/text.c index ea02cd4..d81ab76 100644 --- a/text.c +++ b/text.c @@ -617,7 +617,7 @@ int text_save(Text *txt, const char *filename) { txt->saved_action = txt->undo; text_snapshot(txt); if (!txt->filename) - txt->filename = strdup(filename); + text_filename_set(txt, filename); return 0; err: close(fd); @@ -637,7 +637,7 @@ Text *text_load(const char *filename) { piece_init(&txt->end, &txt->begin, NULL, NULL, 0); lineno_cache_invalidate(&txt->lines); if (filename) { - txt->filename = strdup(filename); + text_filename_set(txt, filename); txt->fd = open(filename, O_RDONLY); if (txt->fd == -1) goto out; @@ -1053,6 +1053,10 @@ const char *text_filename_get(Text *txt) { return txt->filename; } +void text_filename_set(Text *txt, const char *filename) { + txt->filename = strdup(filename); +} + Regex *text_regex_new(void) { Regex *r = calloc(1, sizeof(Regex)); if (!r) diff --git a/text.h b/text.h index b3fd997..0dadbb6 100644 --- a/text.h +++ b/text.h @@ -29,6 +29,8 @@ typedef struct { Text *text_load(const char *file); /* the filename from which this text was loaded or first saved to */ const char *text_filename_get(Text*); +/* associate a filename with the yet unnamed buffer */ +void text_filename_set(Text*, const char *filename); bool text_insert(Text*, size_t pos, const char *data); bool text_insert_raw(Text*, size_t pos, const char *data, size_t len); bool text_delete(Text*, size_t pos, size_t len); -- cgit v1.2.3