On Wed, 2012-08-01 at 21:55 +0100, Måns Rullgård wrote:
> Uoti Urpala <uoti.urp...@pp1.inet.fi> writes:
> > On Wed, 2012-08-01 at 21:34 +0100, Måns Rullgård wrote:
> >> It is not possible to get those semantics using the regular Windows
> >> functions.
> >
> > Of course it is, with enough workarounds (this is already an attempt at
> > a workaround, getting it right would just require more code). I think
> > there are rather obvious ways to fix both issues (besides the most
> > obvious but more work-requiring alternative of writing correct snprintf
> > from scratch): rewrite the format string with different modifiers for
> > the first, try printing the string into temporary storage and double its
> > size until you succeed for the second.
> 
> Of course writing your own, correct snprintf() is possible.  You are
> then, however, not using the Windows-provided functions.
> 
> Writing into temp buffers is not exactly equivalent to the standard
> behaviour.  The standard function can succeed in calculating the size
> that *would* be required even actually allocating it fails.

Yes, it can have more failure cases. However, I meant that from a more
practical perspective. You can do that to get a correctly working
snprintf for practical use.

> If you insist on arguing, I politely request that you at least be right.

If you get to that level of completely literal nitpicking, you could as
well say that it's possible to "get those semantics using the regular
Windows functions" by writing your own snprintf from scratch, while
using the regular Windows functions for something other than doing the
main formatting. I don't think that's a meaningful discussion any more
though.

_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to