2008/09/27

sprintf_s() is not snprintf()

You are compiling some legacy code with Microsoft Visual Studio. You get a warning telling you
warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead.
Of course! So you just change that dangerous sprintf() for a sprintf_s(). The IDE tells you about an additional buffer size parameter, so you may wrongly end up thinking that you are getting the equivalent to Unix's snprintf() or the old MSV _snprintf().

Nope. If you read the docs, you'll learn that sprintf_s() is not truncating the string, but instead invoking the run-time invalid parameter handler, and usually terminating the program. Far better than letting a buffer overflow happen, but maybe not what you were expecting.

La mujer del viajero en el tiempo


Sábado pegado al sillón por culpa de La mujer del viajero en el tiempo. de Audrey Niffenegger. No creo que esta haya sido la última vez que lo leo.

2008/09/24

Happy Stop Software Patents Day!



The problems with software patents go far beyond those trivial patents that get linked from time to time.

Usual disclaimer
(stolen from Read This Blog!) applies here specially: IBM has its opinions and plans; I have mine. Any resemblance between the two is coincidental

2008/09/14

Links are cool. Links are bad.

Some days I spend way too much time in my computer...







Drawn with Animatee in my lovely Nintendo DS.