Commit Graph
560 Commits
Author SHA1 Message Date
sesse c27b99441b Partial revert of r30843.
Some extra changes snuck into my commit; they'll probably be reviewed
and committed to Subversion eventually, but were not part of the fix
for WaitForSingleObject on thread handles.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30844 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-05 11:14:07 +00:00
sesse 61f351dc90 Support thread handles in WaitForSingleObject.
Some codecs need this for clean shutdown (as opposed to a crash); we don't 
really support timed wait since POSIX doesn't, but it doesn't seem necessary.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30843 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-05 11:11:47 +00:00
sesse 5fb74d581f Make emulated Win32 critical sections thread safe.
Earlier, cs->locked was accessed outside the mutex to get around
the problem that default pthread mutexes are not recursive
(ie., you cannot do a double-lock from the same thread), causing
a thread-safety problem, as both detected by Helgrind and showing
up in some multithreaded codecs.

The ideal solution here would be to simply use recursive pthread
mutexes, but there were concerns about reduced debuggability and
possibly portability. Thus, instead, rewrite the critical sections
to be a simple lock count (with owner) protected by a regular mutex.
Whenever a thread wants to enter the critical section and lock_count
is not 0, it sleeps on a special event that tells it when the
critical section is available.



git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30837 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-04 15:57:08 +00:00
sesse f32e92b849 Fix crashes in CreatePalette by fixing the LOGPALETTE struct.
CreatePalette had problems for me, and looking at the code it was quite
obvious why; someone had reversed the order of the two elements of the
LOGPALETTE struct, causing it to allocate and copy a bogus amount of memory.
Why on earth anybody would want to do that is beyond me; whoever did it even
left a comment, but it wasn't very helpful, as it crashed nevertheless. :-)


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30832 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-04 15:31:54 +00:00
sesse c6fb73d6b1 Fix manual reset behavior of Win32 events.
Events have a “reset” member that specify if they flag is automatically                                   
set back on read/wait. However, this was populated by bManualReset, so the                                
flag was inverted and once an event was set, it would forever be counted                                  
as so. Fixed by inverting the flag.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30831 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-04 15:28:02 +00:00
sesse 84bcc5642a Fix return values of WaitForSingleObject when checking an event.
These were simply inverted compared to what they should be.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30830 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-03-04 15:23:52 +00:00
diego b63759b175 Do not cast the results of malloc/calloc/realloc.
These functions return void*, which is compatible with any pointer,
so there is no need for casts.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30744 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-26 15:01:37 +00:00
diego e59081d121 Remove pointless '#if 1' preprocessor directive.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30702 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-22 13:59:32 +00:00
diego 2f6fca9481 Add declaration for exp_EH_prolog_dummy().
This avoids a warning with -Wmissing-prototypes.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30701 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-22 13:55:00 +00:00
diego 289697dc50 Add public function VideoForWindowsVersion() to the appropriate header file.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30693 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-21 23:33:03 +00:00
diego 4d6d266521 Only #define WIN32_LOADER if it has not been #defined already, fixes warning:
loader/win32.c:27:1: warning: "WIN32_LOADER" redefined


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30689 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-21 22:14:11 +00:00
diego 8ba6b4eaf9 cosmetics: Remove pointless empty lines at EOF.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30675 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-20 21:02:49 +00:00
diego d306b727b1 Remove pointless '#if 1' preprocessor directives.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30654 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-19 10:22:29 +00:00
reimar 134bbb8cd8 Add a InitializeCriticalSectionAndSpinCount function.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30640 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-18 20:24:52 +00:00
reimar 87edb382c6 Add a GetModuleHandleW implementation.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30639 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-18 20:23:05 +00:00
reimar 2903a8583f Use snprintf to ensure we do not write outside the buffer bounds
when recording stub names into export_names.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30638 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-18 20:20:23 +00:00
diego 39ce4dd088 Add header #include for print_wave_header() instead of a forward declaration.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30636 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-18 10:26:39 +00:00
diego 4b6ce33628 Directly mark structs as WINE_PACKED where all members are marked as packed.
This fixes a ton of gcc warnings about ignored packed attributes.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30581 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-14 14:49:44 +00:00
diego f34f239cce Explain WIN32_LOADER definition hack.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30545 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-12 14:25:25 +00:00
diego 5b01485ea3 Get rid of pointless CONFIG_QTX_CODECS --> QTX preprocessor indirection.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30544 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-12 14:10:21 +00:00
diego c53143fffb Fix linking of loader test programs when loader is disabled.
Dependencies were only set correctly if the loader code was enabled.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30542 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-12 13:45:19 +00:00
komh 47f78d28f1 Add win32 loader support for OS/2
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30541 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-12 01:38:14 +00:00
diego 03721390a4 Remove pointless egcs #ifdefs; that compiler was never supported.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30539 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-11 22:54:34 +00:00
diego 0a3901e1ae Remove extern "C" declarations from loader code.
Our loader code is not a general-purpose library and not used from C++.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30538 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-11 14:33:57 +00:00
reimar 77e66ee012 Add stubs for several functions, needed for CineForm codec.
Patch by Steinar H. Gunderson [sgunderson bigfoot com]
with some modifications by me.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30531 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-09 19:43:02 +00:00
diego edf4053b98 Remove disabled AVIFILE-specific preprocessor code.
It will never get enabled in MPlayer, nor is it more than cruft.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30526 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-08 10:14:42 +00:00
diego 79641e6232 Merge some preprocessor conditionals where appropriate.
This saves a few lines and simplifies the code slightly.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30525 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-08 10:05:49 +00:00
reimar 847aa91f43 Release pin enumerator after we are done using it.
Fixes issues with CoreAVC tray icon.
Patch by Gianluigi Tiesi [mplayer netfarm it]


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30516 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-05 17:20:21 +00:00
komh 2762207eed Prefix EXTERN_ASM to global variables to match them to an extern prefix of C.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30512 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-05 11:00:59 +00:00
komh 788b356377 Remove '.section' causing the following assembler error on OS/2.
Error: unknown pseudo-op: `.section'


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30511 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-05 10:54:28 +00:00
diego d7a1d12f61 Add missing license headers to test programs for external libraries.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30494 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-03 08:32:35 +00:00
reimar 8afef4e19c Hack to avoid a GUID_NULL clash on 64 bit MinGW.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30348 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-17 13:28:29 +00:00
reimar ee2a738ff8 Document some of the ext_stub magic.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30320 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-16 15:04:17 +00:00
reimar e09b799ade 100l, forgot to change the "magic" value in the stub also in the place replacing it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30319 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-16 15:02:49 +00:00
reimar 06c2afa750 Use ARCH_X86_32 instead of the compiler-specific __i386__
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30294 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-12 20:26:15 +00:00
reimar af6f08ce6a Place a volatile at a more appropriate place.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30268 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-10 19:59:36 +00:00
reimar acc53c9609 Change dummy value to fit into int.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30267 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-10 19:58:01 +00:00
reimar c65994b907 Remove return statement from function that has no return value.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30266 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-10 19:52:59 +00:00
reimar cbdb16328c Avoid excessive fflush in dbgprintf if we didn't even print anything.
Patch by Steinar H. Gunderson [sgunderson bigfoot com]


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30262 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-10 15:37:14 +00:00
reimar e89c898ac1 Fix RegCloseKey to not return an error on success.
Patch by "Steinar H. Gunderson" [sgunderson bigfoot com]


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30261 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-10 15:31:45 +00:00
diego dec1227f1c Add required header #includes to satisfy 'make checkheaders'.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30213 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-04 20:36:27 +00:00
diego a4ce4a23b7 Drop -Iloader from CPPFLAGS for the loader subdirectory.
Instead use full relative paths in #includes.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30212 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-04 20:32:23 +00:00
diego 620ab70745 Add missing header #includes to fix 'make checkheaders'.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30208 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-04 19:04:33 +00:00
reimar 12760fc513 Several hacks to fix compilation of tvi_dshow on MinGW64.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30169 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-02 17:41:11 +00:00
reimar 7199cc3c4d Implement dummy EncodePointer/DecodePointer functions needed for e.g. lagarith.dll
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29767 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-10-10 09:27:22 +00:00
compn 11ce51e3f0 add YAXPAX and YAPAXI exports to msvcr80
fixes kegavideo binary codec
patch by Roberto Togni


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29682 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-09-16 12:14:17 +00:00
diego 6e9cbdc104 whitespace cosmetics: Remove all trailing whitespace.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29305 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-13 02:58:57 +00:00
diego d9ded9284c Add missing 'void' to parameterless function declarations.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29254 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-04 17:35:26 +00:00
diego 2e903f7c75 Remove unnecessary malloc.h #includes and related #ifdeffery.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29126 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-04-02 09:20:48 +00:00
compn 2a1c8c471e enable vp6 codec to read/write .fpf (passlogfile)
fixes 2pass vp6 encoding on linux


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29062 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-03-25 23:59:48 +00:00