[vlc-devel] commit: FIX: DSHOW "none" device open (#2201). Some cleaning (basos g )

basos g noxelia at gmail.com
Wed Mar 11 11:44:32 CET 2009


2009/3/10 xxcv <xxcv07 at gmail.com>:
> basos g wrote:
>
> 2009/3/9 xxcv <xxcv07 at gmail.com>:
>
>
> git version control wrote:
>
> vlc | branch: master | basos g <noxelia 4t gmail d0t c0m> | Wed Feb 11
> 12:52:36 2009 +0200| [576844b24d53c39bdc524af235095ed7939e91fd] | committer:
> Jean-Baptiste Kempf
>
> FIX: DSHOW "none" device open (#2201). Some cleaning
>
> -Fix dshow "none" deivice be recognized as none
>  Note that another patch concerning var_optionParse string
>  dequoting should be applied for this to be fixed
>  ( the concept is not to provide quoted strings to dshow options )
>  -Account for the case when BOTH devices could not be opened
>    (file an error, instead of seeming to play)
>  -Cleaned a little
>  -Added dbg and error msgs
>  -Added coments
>
> Rev 3
>
> Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>
>
>
>                                   ^^^^^^^^^^^^^^^^^^^
> This patch introduce heap corruption crash when running,
>
> http://mailman.videolan.org/pipermail/vlc-devel/2009-February/056369.html
> http://mailman.videolan.org/pipermail/vlc-devel/2009-March/057218.html
>
> "vlc.exe dshow://"
> On a machine without a VIVO device.
>
> warning: HEAP[vlc.exe]:
> warning: Invalid address specified to RtlFreeHeap( 00B40000, 10ADE9D0 )
>
> And this command is working fine on a machine running Windows XP which have
> a VIVO device.
>
>
>
>
>
>
> Could you provide more dubug output (at least all the dshow output and
> input debug (-vvv) output )?
>
>
> There's no useful traces as well as debugging outputs or messages logs,
> because this is caused by
> race condition which you change the order of the function which loads the
> dshow (MS lib)
> way too early I think.
>
> And a stack trace would be of interest (where is the affected
> deallocation command ?)
>
> Also on the
> http://mailman.videolan.org/pipermail/vlc-devel/2009-March/057218.html
> it says
> [0x3530c4] dshow interface error: no video capture device was detected
> which means that you don't have a capture device or no ?
>
> Also it is strange that only crashes on vista .
>
>
> Read my post again, it crash if there's no VIVO device
> And this heap crash have nothing to do what-so-ever with QT-4.5.0.
>
> Are you running on x64 vista and x86 on XP ?
> _______________________________________________

Sorry, you are not helping me. I would like to understand the state of
dshow plugin. For example is an audio device opened ? If not then
Common Close will be called else it will print just an error for video
and start capturing audio. And this might lead to clues about what is
deallocated ..

Anyway i might found something about the destruction order (i don't
think there is race condition. CoInitialize is an atomic operation).

 Could you please try with the attached patch ?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0017-FIX-Dshow-Close-M-Lib-order-issue.patch
Type: text/x-diff
Size: 966 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20090311/63a327cb/attachment.patch>


More information about the vlc-devel mailing list