Merge XFA to PDFium master at 4dc95e7 on 10/28/2014
[pdfium.git] / core / src / fxcodec / fx_tiff / tiff_v403 / tif_error.c
1 /* $Header: /cvs/maptools/cvsroot/libtiff/libtiff/tif_error.c,v 1.5 2010-03-10 18:56:48 bfriesen Exp $ */
2
3 /*
4  * Copyright (c) 1988-1997 Sam Leffler
5  * Copyright (c) 1991-1997 Silicon Graphics, Inc.
6  *
7  * Permission to use, copy, modify, distribute, and sell this software and 
8  * its documentation for any purpose is hereby granted without fee, provided
9  * that (i) the above copyright notices and this permission notice appear in
10  * all copies of the software and related documentation, and (ii) the names of
11  * Sam Leffler and Silicon Graphics may not be used in any advertising or
12  * publicity relating to the software without the specific, prior written
13  * permission of Sam Leffler and Silicon Graphics.
14  * 
15  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
16  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
17  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
18  * 
19  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
20  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
21  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
22  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
24  * OF THIS SOFTWARE.
25  */
26
27 /*
28  * TIFF Library.
29  */
30 #if (!defined(_FPDFAPI_MINI_) || defined(_TIFF_DECODER_)) && !defined(_USE_ADDIN_) && !defined _FX_NO_ANSIC_ && !defined(_FX_EMB_NOUSE_DECODER_)
31 #include "tiffiop.h"
32
33 /*TIFFErrorHandlerExt _TIFFerrorHandlerExt = NULL;*/
34 /* Modify here for use _TIFFerrorHandlerExt by Sunliang.Liu 20090715 */
35 TIFFErrorHandler _TIFFerrorHandler = NULL;
36
37 TIFFErrorHandler
38 TIFFSetErrorHandler(TIFFErrorHandler handler)
39 {
40         TIFFErrorHandler prev = _TIFFerrorHandler;
41         _TIFFerrorHandler = handler;
42         return (prev);
43 }
44
45 TIFFErrorHandlerExt
46 TIFFSetErrorHandlerExt(TIFFErrorHandlerExt handler)
47 {
48         TIFFErrorHandlerExt prev = _TIFFerrorHandlerExt;
49         _TIFFerrorHandlerExt = handler;
50         return (prev);
51 }
52
53 void
54 TIFFError(const char* module, const char* fmt, ...)
55 {
56         va_list ap;
57         va_start(ap, fmt);
58         if (_TIFFerrorHandler)
59                 (*_TIFFerrorHandler)(module, fmt, ap);
60         if (_TIFFerrorHandlerExt)
61                 (*_TIFFerrorHandlerExt)(0, module, fmt, ap);
62         va_end(ap);
63 }
64
65 void
66 TIFFErrorExt(thandle_t fd, const char* module, const char* fmt, ...)
67 {
68         va_list ap;
69         va_start(ap, fmt);
70         if (_TIFFerrorHandler)
71                 (*_TIFFerrorHandler)(module, fmt, ap);
72         if (_TIFFerrorHandlerExt)
73                 (*_TIFFerrorHandlerExt)(fd, module, fmt, ap);
74         va_end(ap);
75 }
76
77 /*
78  * Local Variables:
79  * mode: c
80  * c-basic-offset: 8
81  * fill-column: 78
82  * End:
83  */
84 #endif
85