<p>I cannot find any functionality that relies on the behavior previously described, but in order to play it "better safe than sorry" - we could patch each situation so that the result is as follows:</p>
<pre><code>#ifndef VLC__SKIP_VIDEOINFOHEADER
#define VLC__SKIP_VIDEOINFOHEADER

#ifdef _VIDEOINFOHEADER_
#  warning "_VIDEOINFOHEADER_ is deprecated, use VLC__SKIP_VIDEOINFOHEADER"
#else
#  define _VIDEOINFOHEADER_

typedef struct
ATTR_PACKED
{
    RECT32                  rcSource;
    RECT32                  rcTarget;
    uint32_t                dwBitRate;
    uint32_t                dwBitErrorRate;
    REFERENCE_TIME          AvgTimePerFrame;
    VLC_BITMAPINFOHEADER    bmiHeader;
} VIDEOINFOHEADER;

#endif
#endif</code></pre>
<p>The above means that the functionality is preserved (with an added <em>warning</em>) while allowing developers time to move away from the deprecated identifier.</p>
<p>When we are more comfortable removing <code>_VIDEOINFOHEADER_</code> (and the other aprox. 9 cases in <code>include/vlc_codecs.h</code>), we simply remove the inner branch from each of them.</p>
<ul>
<li>What do you guys think?</li>
</ul>
<p>On 16/02/20 11:10, Jean-Baptiste Kempf wrote:</p>
<blockquote>
<p>On 20 Feb, Filip Roséen wrote : > Questions > --------- > > - Are the weird "include-guards" in <code>include/vlc_codecs.h</code> documented > behavior, or can they safely be removed (or atleast renamed to make > the identifiers legal)?</p>
<p>In theory, they are not necessary.</p>
<p>In practice, it can be a bit more complex. Both of the examples you gave are Windows GDI, DShow, DX, MFT or related MS-video technologies.</p>
<p>The issue is that they are differently defined on various versions of Windows headers and MingW headers. And sometimes only partially.</p>
<p>And those defines were done, because the headers were defining those first, and safe-guarding with those exact defines.</p>
<p>I believe now they're probably unnecessary, but it needs to be extensively tested.</p>
<p>With my kindest regards,</p>
<p>-- Jean-Baptiste Kempf http://www.jbkempf.com/ - +33 672 704 734 Sent from my Electronic Device _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: https://mailman.videolan.org/listinfo/vlc-devel</p>
</blockquote>