Skip to content
Snippets Groups Projects
  1. Jan 29, 2025
    • Alaric Senat's avatar
      mpeg: dvbpsi: avoid casting callbacks · 61c4034f
      Alaric Senat authored and Steve Lhomme's avatar Steve Lhomme committed
      The function signature does not match the dvbpsi callback (demux_t*
      instead of void*). While this is supported by many platforms and
      compilers, it's undefined behavior strictly by the standard [1] and it's
      known to often fail with emscripten [^2].
      
      [1]: 
      Section 6.3.2.3, paragraph 8:
      
      > A pointer to a function of one type may be converted to a pointer to a
      > function of another type and back again; the result shall compare
      > equal to the original pointer. If a converted pointer is used to call
      > a function whose type is not compatible with the pointed-to type, the
      > behavior is undefined.
      
      Quoting section 6.7.5.1, paragraph 2 for pointer compatibility:
      
      > For two pointer types to be compatible, both shall be identically
      > qualified and both shall be pointers to compatible types.
      
      
      [^2]: https://emscripten.org/docs/porting/guidelines/function_pointer_issues.html
      61c4034f
    • Steve Lhomme's avatar
      keystore: avoid dirty function pointer casts · 837f9778
      Steve Lhomme authored
      Especially when mixing LPCWSTR and LPWSTR*.
      837f9778
    • Maxime Chapelet's avatar
      contribs: png: disable debug lib suffix for all platforms · 9858ba5d
      Maxime Chapelet authored and Steve Lhomme's avatar Steve Lhomme committed
      Given contribs are bootstrapped with `--disable-optimizations` option,
      the CMAKE flag `-DCMAKE_BUILD_TYPE` is set to `Debug`, and when
      build configuration is set to `Debug` in libpng contrib, it CMAKE
      configuration append a `d` char to the static library name,
      resulting in a lib named `libpng16d.a` instead of `libpng16.a`.
      Then some vlc module depending on libpng aren't able to link
      properly as they can't find their lpng16 dependency.
      9858ba5d
  2. Jan 28, 2025
  3. Jan 27, 2025
Loading