mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Add hashes to images
Upon successfull reading an image file, this computes a SHA1 hash of the image and saves it with the picture tag in the log file. When a file is not successfully loaded (for example because the log was created on a different computer) we look up the hash in a dictionary that maps hashes to local file names. That dictionary (actually two for both directions), is loaded on startup and saved upon destruction of the main window. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
ea00fdb36a
commit
b02bf002a6
11 changed files with 139 additions and 15 deletions
|
@ -828,6 +828,12 @@ static void parse_picture_gps(char *line, struct membuffer *str, void *_pic)
|
|||
pic->longitude = parse_degrees(line, &line);
|
||||
}
|
||||
|
||||
static void parse_picture_hash(char *line, struct membuffer *str, void *_pic)
|
||||
{
|
||||
struct picture *pic = _pic;
|
||||
pic->hash = get_utf8(str);
|
||||
}
|
||||
|
||||
/* These need to be sorted! */
|
||||
struct keyword_action dc_action[] = {
|
||||
#undef D
|
||||
|
@ -900,7 +906,7 @@ static void settings_parser(char *line, struct membuffer *str, void *_unused)
|
|||
static struct keyword_action picture_action[] = {
|
||||
#undef D
|
||||
#define D(x) { #x, parse_picture_ ## x }
|
||||
D(filename), D(gps)
|
||||
D(filename), D(gps), D(hash)
|
||||
};
|
||||
|
||||
static void picture_parser(char *line, struct membuffer *str, void *_pic)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue