diff options
author | phintuka <phintuka> | 2008-03-16 23:45:09 +0000 |
---|---|---|
committer | phintuka <phintuka> | 2008-03-16 23:45:09 +0000 |
commit | fa5322824d06b66b148f73ff8460fc2911e7fe65 (patch) | |
tree | 87949b0ac8cb53ce71a4f5bdfebe19ef5eba23e6 | |
parent | 545bd978a9ad74dfe12d5d8ad0cc8ef17a05dc02 (diff) | |
download | xineliboutput-fa5322824d06b66b148f73ff8460fc2911e7fe65.tar.gz xineliboutput-fa5322824d06b66b148f73ff8460fc2911e7fe65.tar.bz2 |
Use ntoh_osdcmd and hton_osdcmd
-rw-r--r-- | frontend_svr.c | 39 | ||||
-rw-r--r-- | xine_input_vdr.c | 26 |
2 files changed, 10 insertions, 55 deletions
diff --git a/frontend_svr.c b/frontend_svr.c index d4e5fe67..9d87f689 100644 --- a/frontend_svr.c +++ b/frontend_svr.c @@ -4,7 +4,7 @@ * See the main source file 'xineliboutput.c' for copyright information and * how to reach the author. * - * $Id: frontend_svr.c,v 1.51 2008-03-11 15:57:57 phintuka Exp $ + * $Id: frontend_svr.c,v 1.52 2008-03-16 23:45:09 phintuka Exp $ * */ @@ -338,38 +338,13 @@ void cXinelibServer::OsdCmd(void *cmd_gen) if(cmd_gen) { osd_command_t *cmd = (osd_command_t*)cmd_gen; osd_command_t cmdnet; -#if __BYTE_ORDER == __LITTLE_ENDIAN - /* -> network order */ - memset(&cmdnet, 0, sizeof(osd_command_t)); - cmdnet.cmd = htonl(cmd->cmd); - cmdnet.wnd = htonl(cmd->wnd); - cmdnet.pts = htonll(cmd->pts); - cmdnet.delay_ms = htonl(cmd->delay_ms); - cmdnet.x = htons(cmd->x); - cmdnet.y = htons(cmd->y); - cmdnet.w = htons(cmd->w); - cmdnet.h = htons(cmd->h); - cmdnet.datalen = htonl(cmd->datalen); - cmdnet.num_rle = htonl(cmd->num_rle); - cmdnet.colors = htonl(cmd->colors); - cmdnet.dirty_area.x1 = htons(cmd->dirty_area.x1); - cmdnet.dirty_area.y1 = htons(cmd->dirty_area.y1); - cmdnet.dirty_area.x2 = htons(cmd->dirty_area.x2); - cmdnet.dirty_area.y2 = htons(cmd->dirty_area.y2); - if(cmd->data) { - cmdnet.raw_data = (uint8_t*)malloc(cmd->datalen); - cmdnet.datalen = htonl( recompress_osd_net(cmdnet.raw_data, cmd->data, cmd->num_rle)); - } else { - cmdnet.data = NULL; - } - cmdnet.palette = cmd->palette; -#elif __BYTE_ORDER == __BIG_ENDIAN memcpy(&cmdnet, cmd, sizeof(osd_command_t)); - cmdnet.raw_data = (uint8_t *)malloc(cmd->datalen); - cmdnet.datalen = recompress_osd_net(cmdnet.raw_data, cmd->data, cmd->num_rle); -#else -# error __BYTE_ORDER not defined ! -#endif + if (cmd->data) { + cmdnet.raw_data = (uint8_t *)malloc(cmd->datalen); + cmdnet.datalen = recompress_osd_net(cmdnet.raw_data, cmd->data, cmd->num_rle); + } + // -> network byte order + hton_osdcmd(cmdnet); #ifdef HTTP_OSD uint8_t *spudata = NULL; diff --git a/xine_input_vdr.c b/xine_input_vdr.c index 34dee845..de93151c 100644 --- a/xine_input_vdr.c +++ b/xine_input_vdr.c @@ -4,7 +4,7 @@ * See the main source file 'xineliboutput.c' for copyright information and * how to reach the author. * - * $Id: xine_input_vdr.c,v 1.122 2008-03-13 21:15:31 phintuka Exp $ + * $Id: xine_input_vdr.c,v 1.123 2008-03-16 23:45:09 phintuka Exp $ * */ @@ -3119,27 +3119,7 @@ static int handle_control_osdcmd(vdr_input_plugin_t *this) return CONTROL_DISCONNECTED; } -#if __BYTE_ORDER == __LITTLE_ENDIAN - /* -> host order */ - osdcmd.cmd = ntohl(osdcmd.cmd); - osdcmd.wnd = ntohl(osdcmd.wnd); - osdcmd.pts = ntohll(osdcmd.pts); - osdcmd.delay_ms = ntohl(osdcmd.delay_ms); - osdcmd.x = ntohs(osdcmd.x); - osdcmd.y = ntohs(osdcmd.y); - osdcmd.w = ntohs(osdcmd.w); - osdcmd.h = ntohs(osdcmd.h); - osdcmd.datalen = ntohl(osdcmd.datalen); - osdcmd.num_rle = ntohl(osdcmd.num_rle); - osdcmd.colors = ntohl(osdcmd.colors); - osdcmd.dirty_area.x1 = ntohs(osdcmd.dirty_area.x1); - osdcmd.dirty_area.y1 = ntohs(osdcmd.dirty_area.y1); - osdcmd.dirty_area.x2 = ntohs(osdcmd.dirty_area.x2); - osdcmd.dirty_area.y2 = ntohs(osdcmd.dirty_area.y2); -#elif __BYTE_ORDER == __BIG_ENDIAN -#else -# error __BYTE_ORDER undefined ! -#endif + ntoh_osdcmd(osdcmd); if(osdcmd.palette && osdcmd.colors>0) { int bytes = sizeof(xine_clut_t)*(osdcmd.colors); @@ -3680,7 +3660,7 @@ static int vdr_plugin_parse_control(input_plugin_t *this_gen, const char *cmd) _x_select_spu_channel(stream, chind > -2 ? chind-1 : max-1); else if(1 == sscanf(cmd, "SPUSTREAM %d", &tmp32)) { _x_select_spu_channel(stream, tmp32); - } else + } else err = CONTROL_PARAM_ERROR; LOGDBG("SPU channel selected: [%d]", _x_get_spu_channel (stream)); |