亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pngerror.c

?? qtopia-phone-2.2.0下png工具庫(kù)源代碼實(shí)現(xiàn)。
?? C
字號(hào):
/* pngerror.c - stub functions for i/o and memory allocation * * libpng 1.0.9 - January 31, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * * This file provides a location for all error handling.  Users who * need special error handling are expected to write replacement functions * and use png_set_error_fn() to use those functions.  See the instructions * at each function. */#define PNG_INTERNAL#include "png.h"static void /* PRIVATE */png_default_error PNGARG((png_structp png_ptr,                                      png_const_charp message));static void /* PRIVATE */png_default_warning PNGARG((png_structp png_ptr,                                        png_const_charp message));/* This function is called whenever there is a fatal error.  This function * should not be changed.  If there is a need to handle errors differently, * you should supply a replacement error function and use png_set_error_fn() * to replace the error function at run-time. */void PNGAPIpng_error(png_structp png_ptr, png_const_charp message){   if (png_ptr->error_fn != NULL)      (*(png_ptr->error_fn))(png_ptr, message);   /* if the following returns or doesn't exist, use the default function,      which will not return */   png_default_error(png_ptr, message);}/* This function is called whenever there is a non-fatal error.  This function * should not be changed.  If there is a need to handle warnings differently, * you should supply a replacement warning function and use * png_set_error_fn() to replace the warning function at run-time. */void PNGAPIpng_warning(png_structp png_ptr, png_const_charp message){   if (png_ptr->warning_fn != NULL)      (*(png_ptr->warning_fn))(png_ptr, message);   else      png_default_warning(png_ptr, message);}/* These utilities are used internally to build an error message that relates * to the current chunk.  The chunk name comes from png_ptr->chunk_name, * this is used to prefix the message.  The message is limited in length * to 63 bytes, the name characters are output as hex digits wrapped in [] * if the character is invalid. */#define isnonalpha(c) ((c) < 41 || (c) > 122 || ((c) > 90 && (c) < 97))static PNG_CONST char png_digit[16] = {   '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};static void /* PRIVATE */png_format_buffer(png_structp png_ptr, png_charp buffer, png_const_charp message){   int iout = 0, iin = 0;   while (iin < 4)   {      int c = png_ptr->chunk_name[iin++];      if (isnonalpha(c))      {         buffer[iout++] = '[';         buffer[iout++] = png_digit[(c & 0xf0) >> 4];         buffer[iout++] = png_digit[c & 0x0f];         buffer[iout++] = ']';      }      else      {         buffer[iout++] = (png_byte)c;      }   }   if (message == NULL)      buffer[iout] = 0;   else   {      buffer[iout++] = ':';      buffer[iout++] = ' ';      png_memcpy(buffer+iout, message, 64);      buffer[iout+63] = 0;   }}void PNGAPIpng_chunk_error(png_structp png_ptr, png_const_charp message){   char msg[18+64];   png_format_buffer(png_ptr, msg, message);   png_error(png_ptr, msg);}void PNGAPIpng_chunk_warning(png_structp png_ptr, png_const_charp message){   char msg[16+64];   png_format_buffer(png_ptr, msg, message);   png_warning(png_ptr, msg);}/* This is the default error handling function.  Note that replacements for * this function MUST NOT RETURN, or the program will likely crash.  This * function is used by default, or if the program supplies NULL for the * error function pointer in png_set_error_fn(). */static void /* PRIVATE */png_default_error(png_structp png_ptr, png_const_charp message){#ifndef PNG_NO_CONSOLE_IO   fprintf(stderr, "libpng error: %s\n", message);#else   if (message)     /* make compiler happy */ ;#endif#ifdef PNG_SETJMP_SUPPORTED#  ifdef USE_FAR_KEYWORD   {      jmp_buf jmpbuf;      png_memcpy(jmpbuf,png_ptr->jmpbuf,sizeof(jmp_buf));      longjmp(jmpbuf, 1);   }#  else   longjmp(png_ptr->jmpbuf, 1);# endif#else   if (png_ptr)     /* make compiler happy */ ;   PNG_ABORT();#endif}/* This function is called when there is a warning, but the library thinks * it can continue anyway.  Replacement functions don't have to do anything * here if you don't want them to.  In the default configuration, png_ptr is * not used, but it is passed in case it may be useful. */static void /* PRIVATE */png_default_warning(png_structp png_ptr, png_const_charp message){#ifndef PNG_NO_CONSOLE_IO   fprintf(stderr, "libpng warning: %s\n", message);#else   if (message)     /* appease compiler */ ;#endif   if (png_ptr)      return;}/* This function is called when the application wants to use another method * of handling errors and warnings.  Note that the error function MUST NOT * return to the calling routine or serious problems will occur.  The return * method used in the default routine calls longjmp(png_ptr->jmpbuf, 1) */void PNGAPIpng_set_error_fn(png_structp png_ptr, png_voidp error_ptr,   png_error_ptr error_fn, png_error_ptr warning_fn){   png_ptr->error_ptr = error_ptr;   png_ptr->error_fn = error_fn;   png_ptr->warning_fn = warning_fn;}/* This function returns a pointer to the error_ptr associated with the user * functions.  The application should free any memory associated with this * pointer before png_write_destroy and png_read_destroy are called. */png_voidp PNGAPIpng_get_error_ptr(png_structp png_ptr){   return ((png_voidp)png_ptr->error_ptr);}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国模无码大尺度一区二区三区| 91在线码无精品| 欧美日韩一区二区三区四区五区| 欧美第一区第二区| 亚洲国产精品久久艾草纯爱| 久久久久久影视| 男女性色大片免费观看一区二区 | 天天综合色天天综合色h| 国产综合色产在线精品| 日韩女优制服丝袜电影| 亚洲一区二区影院| 一本色道久久综合精品竹菊| 51精品视频一区二区三区| 亚洲高清免费视频| 在线看不卡av| 午夜视频在线观看一区二区 | 亚洲国产你懂的| 一本一道综合狠狠老| 欧美极品美女视频| 久久精品国产99国产精品| 91精品午夜视频| 日本美女视频一区二区| 欧美一区国产二区| 美女高潮久久久| 国产日韩一级二级三级| 国产激情一区二区三区| 国产精品乱码久久久久久| 国产成人综合在线观看| 成人欧美一区二区三区| 国产剧情一区二区三区| 日本一区二区三区在线不卡| 欧美三级视频在线| 理论电影国产精品| 欧美激情一区二区在线| 色婷婷国产精品| 麻豆久久一区二区| 国产精品午夜电影| 色欧美88888久久久久久影院| 亚洲男人天堂av网| 国产在线国偷精品产拍免费yy| 不卡av电影在线播放| 亚洲欧美日韩国产手机在线| 91老司机福利 在线| 久久99蜜桃精品| 日韩毛片视频在线看| 日韩一级完整毛片| 成人精品视频.| 日本成人超碰在线观看| 日韩伦理av电影| 精品成人私密视频| 国产河南妇女毛片精品久久久| 亚洲乱码国产乱码精品精可以看 | 午夜久久福利影院| 中文字幕亚洲区| 国产精品国产三级国产普通话99 | 青青草国产精品97视觉盛宴| 久久欧美中文字幕| 色香色香欲天天天影视综合网| 免费黄网站欧美| 天堂精品中文字幕在线| 亚洲欧美自拍偷拍| 久久女同精品一区二区| 亚洲精品一区二区三区99| 日韩三区在线观看| 欧美一卡2卡三卡4卡5免费| 国产99久久久国产精品潘金 | 亚洲视频免费看| 亚洲综合999| 日韩精品一级中文字幕精品视频免费观看 | 中文av一区特黄| 中文字幕一区二区三区乱码在线 | 久久综合久久综合九色| 久久久久久一二三区| 一区二区三区免费| 久草在线在线精品观看| 久久99精品久久久久久国产越南 | 成人污污视频在线观看| 国产精品资源在线观看| 国产精品亚洲第一区在线暖暖韩国 | 国产日本欧美一区二区| 欧美一级xxx| 亚洲毛片av在线| 日本视频在线一区| eeuss鲁片一区二区三区| 欧美午夜精品久久久久久超碰| 欧美日韩一区二区电影| 国产亚洲视频系列| 日韩成人一区二区三区在线观看| 国产91丝袜在线播放| 欧美日韩高清一区二区| 中文字幕va一区二区三区| 亚洲激情综合网| av成人老司机| 亚洲国产精品传媒在线观看| 麻豆精品在线看| 成年人网站91| 欧美国产精品一区| 国产成人免费高清| 精品国产a毛片| 免费观看日韩av| 91精品国产欧美一区二区成人| 亚洲国产精品自拍| 91在线看国产| 亚洲综合免费观看高清完整版在线| 成人国产在线观看| 欧美国产日产图区| 成人免费看片app下载| 国产精品每日更新| 97aⅴ精品视频一二三区| 亚洲欧洲av在线| 欧洲人成人精品| 日韩精品高清不卡| 久久青草国产手机看片福利盒子| 国产一二三精品| 中文字幕一区二区日韩精品绯色| 成人黄色软件下载| 亚洲欧美国产高清| 91久久精品日日躁夜夜躁欧美| 亚洲成在线观看| 91精品欧美综合在线观看最新 | 亚洲精品免费在线播放| 欧美视频完全免费看| 奇米影视一区二区三区| 久久午夜电影网| 欧美无乱码久久久免费午夜一区 | 国产精品久久久久久久裸模| 99久久国产综合精品色伊| 五月天视频一区| 中文字幕av免费专区久久| 在线免费亚洲电影| 另类欧美日韩国产在线| 亚洲国产精华液网站w| 欧美日韩一区在线| 国产成人丝袜美腿| 亚洲成av人片在线观看无码| 精品国产一区二区亚洲人成毛片| 成人黄色在线看| 国产精品一卡二| 免费成人在线影院| 午夜视频在线观看一区| 国产精品免费aⅴ片在线观看| 666欧美在线视频| 欧洲色大大久久| 欧美羞羞免费网站| 91麻豆福利精品推荐| 成人午夜电影网站| 国产成人久久精品77777最新版本| 亚洲欧美日韩在线| 久久国产乱子精品免费女| 国产精品丝袜在线| 精品1区2区在线观看| 欧美日本一区二区三区四区| 99久久精品费精品国产一区二区 | 日韩一区二区在线观看视频播放| 在线观看欧美黄色| 色呦呦一区二区三区| 国产成人精品www牛牛影视| 国产成人av在线影院| 成人免费黄色大片| 在线免费观看成人短视频| 国产sm精品调教视频网站| 白白色 亚洲乱淫| 在线免费观看日本一区| 911精品产国品一二三产区| 欧美一级黄色大片| 国产亚洲精品久| 国产精品系列在线| 亚洲精品高清视频在线观看| 日本午夜一本久久久综合| 成人国产在线观看| 日韩一区二区三区在线| 国产精品国产a| 欧美a级理论片| 99国产一区二区三精品乱码| 欧美视频完全免费看| 久久综合狠狠综合久久激情| 一区二区三区在线高清| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产成人av自拍| 这里只有精品免费| 伊人一区二区三区| 国产酒店精品激情| 69堂亚洲精品首页| 亚洲第一电影网| 91丨porny丨国产| 国产亚洲欧美日韩日本| 青青草97国产精品免费观看 | 亚洲成av人影院| 一本一本大道香蕉久在线精品 | 成人精品视频.| 久久蜜桃香蕉精品一区二区三区| 亚洲国产综合在线| 色播五月激情综合网| 中文字幕五月欧美| 成人亚洲一区二区一| 国产精品视频在线看| 国产成人8x视频一区二区| 久久精品视频在线免费观看| 韩国一区二区三区| 久久午夜色播影院免费高清 |