<!DOCTYPE html><html><head><title></title><style type="text/css">#fastmail-quoted p.fastmail-quoted-MsoNormal,#fastmail-quoted p.fastmail-quoted-MsoNoSpacing{margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;}
p.MsoNormal,p.MsoNoSpacing{margin:0}</style></head><body><div><br></div><div>On Thu, Feb 21, 2019, at 09:20, Thomas Guillem wrote:<br></div><blockquote type="cite" id="fastmail-quoted"><div><br></div><div>On Thu, Feb 21, 2019, at 06:57, Rémi Denis-Courmont wrote:<br></div><blockquote id="fastmail-quoted-fastmail-quoted" type="cite"><div>Hi,<br></div><div><br></div><div>This would work properly if demuxers never modified the configuration, or texl'heir parent objects, etc. But because some of them do (AFAIR), this leaks unreproducible state into the testing.<br></div></blockquote><div><br></div><div>Which ones ?<br></div><div>I grepped variable and config changes in all demuxers/codec/packetizers.<br></div><div>There are not config change at all and all variable changes are done on current objects.<br></div><div><br></div><div>So I don't see any unreproducible state for now.<br></div></blockquote><div><br></div><div><div>Maybe some access_demux like bluray/dvd changed global variables in the past but I fixed it when I did the input_thread_t cleanup.<br></div><div><br></div></div><blockquote type="cite" id="fastmail-quoted"><div><br></div><blockquote id="fastmail-quoted-fastmail-quoted" type="cite"><div><br></div><div>Which would somewhat obviously be a very bad thing.<br></div><div><br></div><div class="fastmail-quoted-fastmail-quoted-gmail_quote"><div>Le 20 février 2019 19:40:07 GMT+02:00, Thomas Guillem <thomas@gllm.fr> a écrit :<br></div><blockquote class="fastmail-quoted-fastmail-quoted-gmail_quote" style="margin-top:0pt;margin-right:0pt;margin-bottom:0pt;margin-left:0.8ex;border-left-color:rgb(204, 204, 204);border-left-style:solid;border-left-width:1px;padding-left:1ex;"><pre class="fastmail-quoted-fastmail-quoted-k9mail"><div>Same than vlc_demux_process_memory but with a libvlc_instance_t arg.<hr> test/src/input/demux-run.c | 19 +++++++++++++------<br></div><div> test/src/input/demux-run.h | 3 +++<br></div><div> 2 files changed, 16 insertions(+), 6 deletions(-)<br></div><div><br></div><div>diff --git a/test/src/input/demux-run.c b/test/src/input/demux-run.c<br></div><div>index fe9ce530b5..8178756ed6 100644<br></div><div>--- a/test/src/input/demux-run.c<br></div><div>+++ b/test/src/input/demux-run.c<br></div><div>@@ -363,6 +363,18 @@ int vlc_demux_process_path(const struct vlc_run_args *args, const char *path)<br></div><div> return ret;<br></div><div> }<br></div><div> <br></div><div>+int libvlc_demux_process_memory(libvlc_instance_t *vlc,<br></div><div>+ const struct vlc_run_args *args,<br></div><div>+ const unsigned char *buf, size_t length)<br></div><div>+{<br></div><div>+ stream_t *s = vlc_stream_MemoryNew(VLC_OBJECT(vlc->p_libvlc_int),<br></div><div>+ (void *)buf, length, true);<br></div><div>+ if (s == NULL)<br></div><div>+ fprintf(stderr, "Error: cannot create input stream\n");<br></div><div>+<br></div><div>+ return demux_process_stream(args, s);<br></div><div>+}<br></div><div>+<br></div><div> int vlc_demux_process_memory(const struct vlc_run_args *args,<br></div><div> const unsigned char *buf, size_t length)<br></div><div> {<br></div><div>@@ -370,12 +382,7 @@ int vlc_demux_process_memory(const struct vlc_run_args *args,<br></div><div> if (vlc == NULL)<br></div><div> return -1;<br></div><div> <br></div><div>- stream_t *s = vlc_stream_MemoryNew(VLC_OBJECT(vlc->p_libvlc_int),<br></div><div>- (void *)buf, length, true);<br></div><div>- if (s == NULL)<br></div><div>- fprintf(stderr, "Error: cannot create input stream\n");<br></div><div>-<br></div><div>- int ret = demux_process_stream(args, s);<br></div><div>+ int ret = libvlc_demux_process_memory(vlc, args, buf, length);<br></div><div> libvlc_release(vlc);<br></div><div> return ret;<br></div><div> }<br></div><div>diff --git a/test/src/input/demux-run.h b/test/src/input/demux-run.h<br></div><div>index 01ae245891..551f002770 100644<br></div><div>--- a/test/src/input/demux-run.h<br></div><div>+++ b/test/src/input/demux-run.h<br></div><div>@@ -30,3 +30,6 @@ int vlc_demux_process_url(const struct vlc_run_args *, const char *url);<br></div><div> int vlc_demux_process_path(const struct vlc_run_args *, const char *path);<br></div><div> int vlc_demux_process_memory(const struct vlc_run_args *,<br></div><div> const unsigned char *buf, size_t length);<br></div><div>+int libvlc_demux_process_memory(libvlc_instance_t *vlc,<br></div><div>+ const struct vlc_run_args *args,<br></div><div>+ const unsigned char *buf, size_t length);<br></div></pre></blockquote></div><div><br></div><div>-- <br></div><div>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté. <br></div><div>_______________________________________________<br></div><div>vlc-devel mailing list<br></div><div>To unsubscribe or modify your subscription options:<br></div><div>https://mailman.videolan.org/listinfo/vlc-devel<br></div></blockquote><div><br></div><div>_______________________________________________<br></div><div>vlc-devel mailing list<br></div><div>To unsubscribe or modify your subscription options:<br></div><div>https://mailman.videolan.org/listinfo/vlc-devel<br></div></blockquote><div><br></div></body></html>