[FFmpeg-trac] #8016(undetermined:new): ismindex doesn't handle input filenames or urls containing '&' characters correctly.

FFmpeg trac at avcodec.org
Sat Jul 13 11:53:41 EEST 2019


#8016: ismindex doesn't handle input filenames or urls containing '&' characters
correctly.
--------------------------------------+----------------------------------
             Reporter:  jsyrjala      |                     Type:  defect
               Status:  new           |                 Priority:  normal
            Component:  undetermined  |                  Version:  4.1
             Keywords:                |               Blocked By:
             Blocking:                |  Reproduced by developer:  0
Analyzed by developer:  0             |
--------------------------------------+----------------------------------
 `ismindex` doesn't handle input filenames or urls containing `&`
 characters correctly.

 Running command:

 {{{
 ismindex -n foobar 'foo&bar.ismv'
 }}}

 Creates this 'foobar.ism' file with following contents:

 {{{
 <?xml version="1.0" encoding="utf-8"?>
 <smil xmlns="http://www.w3.org/2001/SMIL20/Language">
         <head>
                 <meta name="clientManifestRelativePath"
 content="foobar.ismc" />
         </head>
         <body>
                 <switch>
                         <video src="foo&bar.ismv" systemBitrate="307228">
                                 <param name="trackID" value="1"
 valueType="data" />
                         </video>
                 </switch>
         </body>
 </smil>
 }}}

 Notice `src="foo&bar.ismv"` in `<video>` tag. This is not valid XML. `&`
 and some other characters should be escaped.

 See: https://stackoverflow.com/questions/5709232/how-do-i-include-etc-in-
 xml-attribute-values

 So the value should be `src="foo&bar.ism"` according to XML
 specification.

 This causes issues in real world apps when you are using URLs as input.
 For example this kind of command would also create invalid `.ism` file.

 {{{
 ismindex -n foobar https://example.com/something?file=foobar&type=ismv
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8016>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list