Skip to content

Commit 16a8126

Browse files
orivejprobonopd
authored andcommitted
Fix buffer overflow in assignment (#317)
Fixes #309
1 parent 168d1e0 commit 16a8126

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

shared.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,13 +129,12 @@ char * get_thumbnail_path(char *path, char *thumbnail_size, gboolean verbose)
129129
int check_appimage_type(char *path, gboolean verbose)
130130
{
131131
FILE *f;
132-
char buffer[4];
132+
char buffer[3];
133133
if (f = fopen(path, "rt"))
134134
{
135135
/* Check magic bytes at offset 8 */
136136
fseek(f, 8, SEEK_SET);
137137
fread(buffer, 1, 3, f);
138-
buffer[4] = 0;
139138
fclose(f);
140139
if((buffer[0] == 0x41) && (buffer[1] == 0x49) && (buffer[2] == 0x01)){
141140
fprintf(stderr, "_________________________\n");
@@ -363,13 +362,12 @@ void write_edited_desktop_file(GKeyFile *key_file_structure, char* appimage_path
363362
fprintf(stderr, ".upd_info offset: %lu\n", upd_offset);
364363
fprintf(stderr, ".upd_info length: %lu\n", upd_length);
365364
FILE *binary;
366-
char buffer[4];
365+
char buffer[3];
367366
if (binary = fopen(appimage_path, "rt"))
368367
{
369368
/* Check whether the first three bytes at the offset are not NULL */
370369
fseek(binary, upd_offset, SEEK_SET);
371370
fread(buffer, 1, 3, binary);
372-
buffer[4] = 0;
373371
fclose(binary);
374372
if((buffer[0] != 0x00) && (buffer[1] != 0x00) && (buffer[2] != 0x00)){
375373
gchar *appimageupdate_group = "Desktop Action AppImageUpdate";

0 commit comments

Comments
 (0)