diff options
Diffstat (limited to 'server/thumb-server-internal.c')
-rwxr-xr-x | server/thumb-server-internal.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/server/thumb-server-internal.c b/server/thumb-server-internal.c index 32fd5a3..287a3da 100755 --- a/server/thumb-server-internal.c +++ b/server/thumb-server-internal.c @@ -37,7 +37,6 @@ #define LOG_TAG "MEDIA_THUMBNAIL_SERVER" #define THUMB_DEFAULT_WIDTH 320 #define THUMB_DEFAULT_HEIGHT 240 -#define THUMB_BLOCK_SIZE 10240 #define THUMB_COMM_SOCK_PATH tzplatform_mkpath(TZ_SYS_RUN, "media-server/media_ipc_thumbcomm.socket") #define THUMB_EMPTY_STR "" @@ -136,23 +135,18 @@ gboolean _thumb_server_read_socket(GIOChannel *src, GIOCondition condition, gpoi res_msg.dst_path[0] = '\0'; int buf_size = 0; - int sending_block = 0; - int block_size = sizeof(res_msg) - sizeof(unsigned char *); + int send_len = 0; + int send_pos = 0; unsigned char *buf = NULL; _media_thumb_set_buffer(&res_msg, &buf, &buf_size); while (buf_size > 0) { - if (buf_size < THUMB_BLOCK_SIZE) - block_size = buf_size; - - if (send(client_sock, buf+sending_block, block_size, 0) < 0) { + if ((send_len = send(client_sock, buf + send_pos, buf_size, 0)) < 0) { thumb_stderror("send failed"); + break; } - - sending_block += block_size; - buf_size -= block_size; - if (block_size < THUMB_BLOCK_SIZE) - block_size = THUMB_BLOCK_SIZE; + send_pos += send_len; + buf_size -= send_len; } SAFE_FREE(buf); |