text: /**
   * Workaround for lack of snprintf(3) in Visual Studio.  See
   * http://stackoverflow.com/questions/2915672/snprintf-and-visual-studio-2010/8712996#8712996
   * It's a trivial wrapper around the builtin _vsnprintf_s and
   * _vscprintf functions.
   */
  
  #ifdef _MSC_VER
  
  #include <stdio.h>
  #include <stdarg.h>
  #include "libport.h"
  
  int _TIFF_vsnprintf_f(char* str, size_t size, const char* format, va_list ap)
  {
    int count = -1;
  
    if (size != 0)
  #if _MSC_VER <=	1310
      count = _vsnprintf(str, size, format, ap);
  #else
      count = _vsnprintf_s(str, size, _TRUNCATE, format, ap);
  #endif
    if (count == -1)
      count = _vscprintf(format, ap);
  
    return count;
  }
  
  int _TIFF_snprintf_f(char* str, size_t size, const char* format, ...)
  {
    int count;
    va_list ap;
  
    va_start(ap, format);
    count = vsnprintf(str, size, format, ap);
    va_end(ap);
  
    return count;
  }
  
  #endif // _MSC_VER
  