mpyne accepted this revision.
mpyne added a comment.
This revision is now accepted and ready to land.


  Actually `-Wzero-as-null-pointer-constant` is probably a good idea, and this 
is a correct fix.  A decade ago when everything was going from 32 to 64-bits, 
we ran into a JuK crash bug because we used `GST_NULL` (or similar) as the null 
constant for a gstreamer variadic C function, which in C++ mode was `0`.  Well, 
C++ didn't know that the `0` was supposed to be a pointer instead of an `int`, 
so the function in question crashed because C++ put a 32-bit `int` on the stack 
instead of a 64-bit null pointer.
  
  Using `nullptr` consistently solves this issue, even though it wouldn't be a 
problem here since C++ can see that the `0` is supposed to convert to a pointer.
  
  The real fix should probably go in zlib, but I wouldn't hold my breath due to 
the compatibility requirements that I would imagine they maintain.

REPOSITORY
  R243 KArchive

BRANCH
  master

REVISION DETAIL
  https://phabricator.kde.org/D10168

To: aacid, mpyne
Cc: mpyne, #frameworks, michaelh

Reply via email to