summaryrefslogtreecommitdiff
path: root/xine_input_vdr.c
diff options
context:
space:
mode:
authorphintuka <phintuka>2008-03-11 15:57:57 +0000
committerphintuka <phintuka>2008-03-11 15:57:57 +0000
commit77ff7dfcb59f6777ebdda23f3a6a55ae7e1547d2 (patch)
tree36985b96daea52b40e491d75489028e43c6719a5 /xine_input_vdr.c
parentbc1cad36edb00d1a031fc7b8008e2ce7954ace55 (diff)
downloadxineliboutput-77ff7dfcb59f6777ebdda23f3a6a55ae7e1547d2.tar.gz
xineliboutput-77ff7dfcb59f6777ebdda23f3a6a55ae7e1547d2.tar.bz2
Added dirty area and flags to xine_osd_command_t
Diffstat (limited to 'xine_input_vdr.c')
-rw-r--r--xine_input_vdr.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/xine_input_vdr.c b/xine_input_vdr.c
index 4f09204c..3b84539c 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.120 2008-02-27 00:30:43 phintuka Exp $
+ * $Id: xine_input_vdr.c,v 1.121 2008-03-11 15:57:57 phintuka Exp $
*
*/
@@ -2318,7 +2318,10 @@ static int vdr_plugin_exec_osd_command(input_plugin_t *this_gen,
}
if(!pthread_mutex_lock (&this->osd_lock)) {
- palette_rgb_to_yuy(cmd->palette, cmd->colors);
+ if(!(cmd->flags & OSDFLAG_YUV_CLUT))
+ palette_rgb_to_yuy(cmd->palette, cmd->colors);
+ cmd->flags &= ~OSDFLAG_YUV_CLUT;
+
video_changed = update_video_size(this);
this->class->xine->port_ticket->acquire(this->class->xine->port_ticket, 1);
result = exec_osd_command(this, cmd);
@@ -3129,6 +3132,10 @@ static int handle_control_osdcmd(vdr_input_plugin_t *this)
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 !