summaryrefslogtreecommitdiff
path: root/src/bin/ethumb_client
diff options
context:
space:
mode:
authorStefan Schmidt <stefan@datenfreihafen.org>2013-02-11 10:54:34 +0000
committerStefan Schmidt <stefan@datenfreihafen.org>2013-02-11 10:54:34 +0000
commitfe86e29fa67ad0ebce468509775bc9bf1112fdb1 (patch)
tree9666288896d35e62bd95cedcccb08b0e59690eb5 /src/bin/ethumb_client
parent664b4b9db49267688ce7a44f91d2e91162f97d7c (diff)
efl/ethumb: Fix more memory leaks in ethumbd_slave.c
MAke sure we free strdup'ed memory when hittign an error case. SVN revision: 83818
Diffstat (limited to 'src/bin/ethumb_client')
-rw-r--r--src/bin/ethumb_client/ethumbd_slave.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/src/bin/ethumb_client/ethumbd_slave.c b/src/bin/ethumb_client/ethumbd_slave.c
index 4a328b8d50..294421d31b 100644
--- a/src/bin/ethumb_client/ethumbd_slave.c
+++ b/src/bin/ethumb_client/ethumbd_slave.c
@@ -448,16 +448,30 @@ _ec_frame_set(struct _Ethumbd_Child *ec, Ethumb *e)
448 return 0; 448 return 0;
449 r = _ec_read_safe(STDIN_FILENO, &type, sizeof(type)); 449 r = _ec_read_safe(STDIN_FILENO, &type, sizeof(type));
450 if (!r) 450 if (!r)
451 return 0; 451 {
452 free(theme_file);
453 return 0;
454 }
452 r = _ec_pipe_str_read(ec, &group); 455 r = _ec_pipe_str_read(ec, &group);
453 if (!r) 456 if (!r)
454 return 0; 457 {
458 free(theme_file);
459 return 0;
460 }
455 r = _ec_read_safe(STDIN_FILENO, &type, sizeof(type)); 461 r = _ec_read_safe(STDIN_FILENO, &type, sizeof(type));
456 if (!r) 462 if (!r)
457 return 0; 463 {
464 free(theme_file);
465 free(group);
466 return 0;
467 }
458 r = _ec_pipe_str_read(ec, &swallow); 468 r = _ec_pipe_str_read(ec, &swallow);
459 if (!r) 469 if (!r)
460 return 0; 470 {
471 free(theme_file);
472 free(group);
473 return 0;
474 }
461 DBG("frame = %s:%s:%s", theme_file, group, swallow); 475 DBG("frame = %s:%s:%s", theme_file, group, swallow);
462 ethumb_frame_set(e, theme_file, group, swallow); 476 ethumb_frame_set(e, theme_file, group, swallow);
463 free(theme_file); 477 free(theme_file);