fix llvm/clang and gcc errors.
NOTE: mixing write() and fprintf() to the same descriptor (stderr, done by ERR()), will likely cause problems :-/ SVN revision: 46753
This commit is contained in:
parent
d99f80aff7
commit
9345b211b0
|
@ -48,6 +48,7 @@
|
||||||
#define INF(...) EINA_LOG_INFO(__VA_ARGS__)
|
#define INF(...) EINA_LOG_INFO(__VA_ARGS__)
|
||||||
#define WRN(...) EINA_LOG_WARN(__VA_ARGS__)
|
#define WRN(...) EINA_LOG_WARN(__VA_ARGS__)
|
||||||
#define ERR(...) EINA_LOG_ERR(__VA_ARGS__)
|
#define ERR(...) EINA_LOG_ERR(__VA_ARGS__)
|
||||||
|
#define CRIT(...) EINA_LOG_CRIT(__VA_ARGS__)
|
||||||
|
|
||||||
static const char _ethumb_dbus_bus_name[] = "org.enlightenment.Ethumb";
|
static const char _ethumb_dbus_bus_name[] = "org.enlightenment.Ethumb";
|
||||||
static const char _ethumb_dbus_interface[] = "org.enlightenment.Ethumb";
|
static const char _ethumb_dbus_interface[] = "org.enlightenment.Ethumb";
|
||||||
|
@ -354,6 +355,28 @@ _generated_cb(struct _Ethumbd *ed, Eina_Bool success, const char *thumb_path, co
|
||||||
ed->processing = NULL;
|
ed->processing = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Eina_Bool
|
||||||
|
_write_safe(int fd, void *data, size_t size)
|
||||||
|
{
|
||||||
|
unsigned char *buf = data;
|
||||||
|
size_t todo = size;
|
||||||
|
while (todo > 0)
|
||||||
|
{
|
||||||
|
size_t r = write(fd, buf, todo);
|
||||||
|
if (r > 0)
|
||||||
|
{
|
||||||
|
todo -= r;
|
||||||
|
buf += r;
|
||||||
|
}
|
||||||
|
else if ((r < 0) && (errno != EINTR))
|
||||||
|
{
|
||||||
|
ERR("could not write to fd=%d: %s", fd, strerror(errno));
|
||||||
|
return EINA_FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return EINA_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_ethumbd_slave_cmd_ready(struct _Ethumbd *ed)
|
_ethumbd_slave_cmd_ready(struct _Ethumbd *ed)
|
||||||
{
|
{
|
||||||
|
@ -369,7 +392,7 @@ _ethumbd_slave_cmd_ready(struct _Ethumbd *ed)
|
||||||
size_path = (int *)bufcmd;
|
size_path = (int *)bufcmd;
|
||||||
bufcmd += sizeof(*size_path);
|
bufcmd += sizeof(*size_path);
|
||||||
|
|
||||||
write(STDERR_FILENO, bufcmd, ed->slave.scmd);
|
_write_safe(STDERR_FILENO, bufcmd, ed->slave.scmd);
|
||||||
|
|
||||||
thumb_path = bufcmd;
|
thumb_path = bufcmd;
|
||||||
bufcmd += *size_path;
|
bufcmd += *size_path;
|
||||||
|
@ -423,7 +446,8 @@ _ethumbd_slave_data_read_cb(void *data, int type, void *event)
|
||||||
ssize = ev->size;
|
ssize = ev->size;
|
||||||
sdata = ev->data;
|
sdata = ev->data;
|
||||||
|
|
||||||
write(STDERR_FILENO, sdata, ssize);
|
if (!_write_safe(STDERR_FILENO, sdata, ssize))
|
||||||
|
return 0;
|
||||||
|
|
||||||
while (ssize > 0)
|
while (ssize > 0)
|
||||||
{
|
{
|
||||||
|
@ -713,14 +737,30 @@ _ethumb_table_append(struct _Ethumbd *ed)
|
||||||
{
|
{
|
||||||
int new_max = q->max_count + 5;
|
int new_max = q->max_count + 5;
|
||||||
int start, size;
|
int start, size;
|
||||||
|
void *tmp;
|
||||||
|
|
||||||
start = q->max_count;
|
start = q->max_count;
|
||||||
size = new_max - q->max_count;
|
size = new_max - q->max_count;
|
||||||
|
|
||||||
q->table = realloc(q->table, new_max * sizeof(struct _Ethumb_Object));
|
tmp = realloc(q->table, new_max * sizeof(struct _Ethumb_Object));
|
||||||
q->list = realloc(q->list, new_max * sizeof(int));
|
if (!tmp)
|
||||||
|
{
|
||||||
|
CRIT("could not realloc q->table to %zd bytes: %s",
|
||||||
|
new_max * sizeof(struct _Ethumb_Object), strerror(errno));
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
q->table = tmp;
|
||||||
memset(&q->table[start], 0, size * sizeof(struct _Ethumb_Object));
|
memset(&q->table[start], 0, size * sizeof(struct _Ethumb_Object));
|
||||||
|
|
||||||
|
tmp = realloc(q->list, new_max * sizeof(int));
|
||||||
|
if (!tmp)
|
||||||
|
{
|
||||||
|
CRIT("could not realloc q->list to %zd bytes: %s",
|
||||||
|
new_max * sizeof(int), strerror(errno));
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
q->list = tmp;
|
||||||
|
|
||||||
q->max_count = new_max;
|
q->max_count = new_max;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -874,6 +914,8 @@ _ethumb_dbus_ethumb_new_cb(E_DBus_Object *object, DBusMessage *msg)
|
||||||
goto end_new;
|
goto end_new;
|
||||||
|
|
||||||
i = _ethumb_table_append(ed);
|
i = _ethumb_table_append(ed);
|
||||||
|
if (i < 0)
|
||||||
|
goto end_new;
|
||||||
|
|
||||||
odata = calloc(1, sizeof(*odata));
|
odata = calloc(1, sizeof(*odata));
|
||||||
odata->index = i;
|
odata->index = i;
|
||||||
|
|
|
@ -223,7 +223,7 @@ main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
Ethumb_Client *c;
|
Ethumb_Client *c;
|
||||||
Eina_Bool quit_option = 0;
|
Eina_Bool quit_option = 0;
|
||||||
const char *format_str, *aspect_str;
|
const char *format_str = NULL, *aspect_str;
|
||||||
struct options opts = {
|
struct options opts = {
|
||||||
{-1, -1, -1, -1},
|
{-1, -1, -1, -1},
|
||||||
0, 0,
|
0, 0,
|
||||||
|
|
|
@ -910,6 +910,12 @@ _ethumb_file_generate_path(Ethumb *e)
|
||||||
category = eina_stringshare_ref(_thumb_category_normal);
|
category = eina_stringshare_ref(_thumb_category_normal);
|
||||||
else if (e->tw == THUMB_SIZE_LARGE)
|
else if (e->tw == THUMB_SIZE_LARGE)
|
||||||
category = eina_stringshare_ref(_thumb_category_large);
|
category = eina_stringshare_ref(_thumb_category_large);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ERR("fdo_format but size %d is not NORMAL (%d) or LARGE (%d)?",
|
||||||
|
e->tw, THUMB_SIZE_NORMAL, THUMB_SIZE_LARGE);
|
||||||
|
category = "unknown";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (e->format == ETHUMB_THUMB_FDO)
|
if (e->format == ETHUMB_THUMB_FDO)
|
||||||
|
|
|
@ -317,7 +317,6 @@ _generate_thumb(Ethumb *e)
|
||||||
_plugin->video = o;
|
_plugin->video = o;
|
||||||
|
|
||||||
ethumb_file_get(e, &file, NULL);
|
ethumb_file_get(e, &file, NULL);
|
||||||
ethumb_video_start_get(e);
|
|
||||||
f = ethumb_thumb_format_get(e);
|
f = ethumb_thumb_format_get(e);
|
||||||
|
|
||||||
emotion_object_file_set(o, file);
|
emotion_object_file_set(o, file);
|
||||||
|
|
Loading…
Reference in New Issue