tif_warning.c 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /* $Header: /cvs/maptools/cvsroot/libtiff/libtiff/tif_warning.c,v 1.3 2010-03-10 18:56:49 bfriesen Exp $ */
  2. /*
  3. * Copyright (c) 1988-1997 Sam Leffler
  4. * Copyright (c) 1991-1997 Silicon Graphics, Inc.
  5. *
  6. * Permission to use, copy, modify, distribute, and sell this software and
  7. * its documentation for any purpose is hereby granted without fee, provided
  8. * that (i) the above copyright notices and this permission notice appear in
  9. * all copies of the software and related documentation, and (ii) the names of
  10. * Sam Leffler and Silicon Graphics may not be used in any advertising or
  11. * publicity relating to the software without the specific, prior written
  12. * permission of Sam Leffler and Silicon Graphics.
  13. *
  14. * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
  15. * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
  16. * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
  17. *
  18. * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  19. * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  20. * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  21. * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
  22. * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  23. * OF THIS SOFTWARE.
  24. */
  25. /*
  26. * TIFF Library.
  27. */
  28. #include "tiffiop.h"
  29. TIFFErrorHandlerExt _TIFFwarningHandlerExt = NULL;
  30. TIFFErrorHandler
  31. TIFFSetWarningHandler(TIFFErrorHandler handler)
  32. {
  33. TIFFErrorHandler prev = _TIFFwarningHandler;
  34. _TIFFwarningHandler = handler;
  35. return (prev);
  36. }
  37. TIFFErrorHandlerExt
  38. TIFFSetWarningHandlerExt(TIFFErrorHandlerExt handler)
  39. {
  40. TIFFErrorHandlerExt prev = _TIFFwarningHandlerExt;
  41. _TIFFwarningHandlerExt = handler;
  42. return (prev);
  43. }
  44. void
  45. TIFFWarning(const char* module, const char* fmt, ...)
  46. {
  47. va_list ap;
  48. va_start(ap, fmt);
  49. if (_TIFFwarningHandler)
  50. (*_TIFFwarningHandler)(module, fmt, ap);
  51. if (_TIFFwarningHandlerExt)
  52. (*_TIFFwarningHandlerExt)(0, module, fmt, ap);
  53. va_end(ap);
  54. }
  55. void
  56. TIFFWarningExt(thandle_t fd, const char* module, const char* fmt, ...)
  57. {
  58. va_list ap;
  59. va_start(ap, fmt);
  60. if (_TIFFwarningHandler)
  61. (*_TIFFwarningHandler)(module, fmt, ap);
  62. if (_TIFFwarningHandlerExt)
  63. (*_TIFFwarningHandlerExt)(fd, module, fmt, ap);
  64. va_end(ap);
  65. }
  66. /*
  67. * Local Variables:
  68. * mode: c
  69. * c-basic-offset: 8
  70. * fill-column: 78
  71. * End:
  72. */