[MPlayer-dev-eng] [PATCH] various warning fixes (and questions)
Dominik Mierzejewski
dominik at rangers.eu.org
Sat Dec 28 21:18:43 CET 2002
This patch tries to fix the following warnings:
ve_qtvideo.c: In function `vf_open':
ve_qtvideo.c:293: warning: implicit declaration of function `Setup_LDT_Keeper'
ve_qtvideo.c:295: warning: assignment from incompatible pointer type
[...]
ve_qtvideo.c:306: warning: assignment from incompatible pointer type
We need to include ldt_keeper.h and cast the pointers to functions returned by
GetProcAddress to appropriate function types.
tv.c: In function `tv_set_channel':
tv.c:576: warning: no return statement in function returning non-void
tv.c:576: warning: control reaches end of non-void function
The return value is never used in mplayer or mencoder, so I'm not sure what
value should be returned. I inserted return (1), like in other tv_* functions.
An alternate solution would be to make this function void tv_set_channel.
cyberblade_vid.c: In function `CROUTW':
cyberblade_vid.c:69: warning: suggest parentheses around arithmetic in operand of |
cyberblade_vid.c: In function `SROUTW':
cyberblade_vid.c:83: warning: suggest parentheses around arithmetic in operand of |
I hope I got these parentheses right. Anyway the Cyberblade driver seems to
be broken - I got a report from one user who downloaded my RPMs saying all he's
got is a pink window. I told him to file a full bugreport to mplayer-users.
mplayer.c: In function `main':
mplayer.c:855: warning: too few arguments for format
This is quite obvious, I think.
vobsub.c: In function `vobsub_set_from_lang':
vobsub.c:1164: warning: `return' with no value, in function returning non-void
And again, I'm not sure what value to return - it's not used anywhere anyway.
demux_ogg.c: In function `demux_ogg_open':
demux_ogg.c:472: warning: implicit declaration of function `subcp_open'
demux_ogg.c: In function `demux_close_ogg':
demux_ogg.c:1017: warning: implicit declaration of function `subcp_close'
So it looks like we need either to export these in subreader.h (which is included
in demux_ogg.c) or declare them as externs in demux_ogg.c. This patch favours the
former approach.
--
MPlayer RPMs maintainer: http://www.piorunek.pl/~dominik/linux/pkgs/mplayer/
"The Universe doesn't give you any points for doing things that are easy."
-- Sheridan to Garibaldi in Babylon 5:"The Geometry of Shadows"
-------------- next part --------------
--- MPlayer-20021228/libmpcodecs/ve_qtvideo.c.warn Fri Dec 27 23:46:21 2002
+++ MPlayer-20021228/libmpcodecs/ve_qtvideo.c Sat Dec 28 17:39:33 2002
@@ -16,6 +16,10 @@
#include "../loader/qtx/qtxsdk/components.h"
#include "wine/windef.h"
+#ifdef USE_WIN32DLL
+#include "ldt_keeper.h"
+#endif
+
#include "codec-cfg.h"
#include "stream.h"
#include "demuxer.h"
@@ -292,18 +296,18 @@
Setup_LDT_Keeper();
handler = LoadLibraryA("qtmlClient.dll");
- InitializeQTML = GetProcAddress(handler, "InitializeQTML");
- GetGWorldPixMap = GetProcAddress(handler, "GetGWorldPixMap");
- QTNewGWorldFromPtr = GetProcAddress(handler, "QTNewGWorldFromPtr");
- NewHandleClear = GetProcAddress(handler, "NewHandleClear");
- FindCodec = GetProcAddress(handler,"FindCodec");
- CompressSequenceBegin = GetProcAddress(handler,"CompressSequenceBegin");
- CompressSequenceFrame = GetProcAddress(handler,"CompressSequenceFrame");
- GetMaxCompressionSize = GetProcAddress(handler,"GetMaxCompressionSize");
- CDSequenceEnd = GetProcAddress(handler,"CDSequenceEnd");
- FindNextComponent = GetProcAddress(handler, "FindNextComponent");
- CountComponents = GetProcAddress(handler, "CountComponents");
- GetComponentInfo = GetProcAddress(handler, "GetComponentInfo");
+ InitializeQTML = (OSErr (*)(long))GetProcAddress(handler, "InitializeQTML");
+ GetGWorldPixMap = (PixMapHandle (*)(GWorldPtr))GetProcAddress(handler, "GetGWorldPixMap");
+ QTNewGWorldFromPtr = (OSErr(*)(GWorldPtr *,OSType,const Rect *,CTabHandle,void*,GWorldFlags,void *,long))GetProcAddress(handler, "QTNewGWorldFromPtr");
+ NewHandleClear = (OSErr(*)(Size))GetProcAddress(handler, "NewHandleClear");
+ FindCodec = (OSErr (*)(CodecType,CodecComponent,CompressorComponent *,DecompressorComponent *))GetProcAddress(handler,"FindCodec");
+ CompressSequenceBegin = (OSErr(*)(ImageSequence *,PixMapHandle,PixMapHandle,const Rect *,const Rect *,short,CodecType,CompressorComponent,CodecQ,CodecQ,long,CTabHandle,CodecFlags,ImageDescriptionHandle))GetProcAddress(handler,"CompressSequenceBegin");
+ CompressSequenceFrame = (OSErr(*)(ImageSequence,PixMapHandle,const Rect *,CodecFlags,Ptr,long *,UInt8 *,ICMCompletionProcRecordPtr))GetProcAddress(handler,"CompressSequenceFrame");
+ GetMaxCompressionSize = (OSErr(*)(PixMapHandle,const Rect *,short,CodecQ,CodecType,CompressorComponent,long *))GetProcAddress(handler,"GetMaxCompressionSize");
+ CDSequenceEnd = (OSErr (*)(ImageSequence))GetProcAddress(handler,"CDSequenceEnd");
+ FindNextComponent = (Component (*)(Component,ComponentDescription*))GetProcAddress(handler, "FindNextComponent");
+ CountComponents = (long (*)(ComponentDescription*))GetProcAddress(handler, "CountComponents");
+ GetComponentInfo = (OSErr (*)(Component,ComponentDescription*,Handle,Handle,Handle))GetProcAddress(handler, "GetComponentInfo");
if(!InitializeQTML ||!CompressSequenceBegin){
printf("invalid qt DLL!\n");
return 0;
--- MPlayer-20021228/libmpdemux/tv.c.warn Sun Dec 22 23:44:16 2002
+++ MPlayer-20021228/libmpdemux/tv.c Sat Dec 28 17:39:33 2002
@@ -573,6 +573,7 @@
break;
}
}
+ return(1);
}
int tv_step_norm(tvi_handle_t *tvh)
--- MPlayer-20021228/vidix/drivers/cyberblade_regs.h.warn Sat Dec 21 14:06:23 2002
+++ MPlayer-20021228/vidix/drivers/cyberblade_regs.h Sat Dec 28 17:39:33 2002
@@ -135,12 +135,12 @@
#define OUTW(addr,val) (*(unsigned short *)(cyberblade_reg_base+addr)=(val))
#define SRINB(reg) (OUTB(0x3c4,reg), INB(0x3c5))
-#define SROUTB(reg,val) (OUTW(0x3c4,(val)<<8|reg))
+#define SROUTB(reg,val) (OUTW(0x3c4,((val)<<8)|(reg)))
#define CRINB(reg) \
(OUTB(cyberblade_crtc+4,reg), INB(cyberblade_crtc+5))
#define CROUTB(reg,val) \
- (OUTW(cyberblade_crtc+4,(val)<<8|reg))
+ (OUTW(cyberblade_crtc+4,((val)<<8)|(reg)))
/* --- */
--- MPlayer-20021228/mplayer.c.warn Sat Dec 28 17:25:27 2002
+++ MPlayer-20021228/mplayer.c Sat Dec 28 17:39:33 2002
@@ -852,7 +852,7 @@
next_edl_record->next = NULL;
} else {
if( ( edl_fd = fopen( edl_output_filename, "w" ) ) == NULL ) {
- printf( "Error opening file [%s] for writing!\n" );
+ printf( "Error opening file [%s] for writing!\n", edl_output_filename );
edl_output_filename = NULL;
next_edl_record->next = NULL;
}
--- MPlayer-20021228/vobsub.c.warn Thu Dec 26 23:46:16 2002
+++ MPlayer-20021228/vobsub.c Sat Dec 28 17:39:33 2002
@@ -1161,7 +1161,7 @@
if ((strncmp(vob->spu_streams[i].id, lang, 2)==0)){
vobsub_id=i;
mp_msg(MSGT_VOBSUB, MSGL_INFO, "Selected VOBSUB language: %d language: %s\n", i, vob->spu_streams[i].id);
- return;
+ return 0;
}
lang+=2;while (lang[0]==',' || lang[0]==' ') ++lang;
}
--- MPlayer-20021228/subreader.h.warn Sat Dec 28 18:07:28 2002
+++ MPlayer-20021228/subreader.h Sat Dec 28 18:07:15 2002
@@ -39,6 +39,8 @@
subtitle* sub_read_file (char *filename, float pts);
subtitle* subcp_recode1 (subtitle *sub);
+void subcp_open (void); /* for demux_ogg.c */
+void subcp_close (void); /* for demux_ogg.c */
char * sub_filename(char *path, char * fname);
void list_sub_file(subtitle* subs);
void dump_srt(subtitle* subs, float fps);
More information about the MPlayer-dev-eng
mailing list