From 24b41117f5e0365f316f9b2decd7a52a0766b9d0 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Wed, 30 Jan 2019 17:05:32 +0100 Subject: Make sure of string length in get_event_string() --- libcrystfel/src/events.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'libcrystfel/src') diff --git a/libcrystfel/src/events.c b/libcrystfel/src/events.c index 2bf6cfad..7cd05784 100644 --- a/libcrystfel/src/events.c +++ b/libcrystfel/src/events.c @@ -297,13 +297,13 @@ char *get_event_string(struct event *ev) if ( ev == NULL ) return strdup("(none)"); - ev_len = 0; + ev_len = 1; /* Zero terminator */ for ( i=0; ipath_length; i++ ) { ev_len += strlen(ev->path_entries[i]); - ev_len += 1; + ev_len += 1; /* Slash afterwards */ } - ev_len += 16*ev->dim_length; - ev_len += 2; + ev_len += 16*ev->dim_length; /* Max length of number plus slash */ + ev_len += 2; /* Double slash in middle */ evstr = malloc(ev_len); if ( evstr == NULL ) return NULL; @@ -318,7 +318,7 @@ char *get_event_string(struct event *ev) for ( i=0; idim_length; i++ ) { char num_buf[16]; - sprintf(num_buf, "%i", ev->dim_entries[i]); + snprintf(num_buf, 16, "%i", ev->dim_entries[i]); if ( i > 0 ) strcat(evstr, "/"); strcat(evstr, num_buf); } -- cgit v1.2.3