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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jmemansi.c

?? 這是JPEG解碼、編碼的源代碼
?? C
字號:
/*
 * jmemansi.c
 *
 * Copyright (C) 1992-1996, Thomas G. Lane.
 * This file is part of the Independent JPEG Group's software.
 * For conditions of distribution and use, see the accompanying README file.
 *
 * This file provides a simple generic implementation of the system-
 * dependent portion of the JPEG memory manager.  This implementation
 * assumes that you have the ANSI-standard library routine tmpfile().
 * Also, the problem of determining the amount of memory available
 * is shoved onto the user.
 */

#define JPEG_INTERNALS
#include "jinclude.h"
#include "jpeglib.h"
#include "jmemsys.h"		/* import the system-dependent declarations */

#ifndef HAVE_STDLIB_H		/* <stdlib.h> should declare malloc(),free() */
extern void * malloc JPP((size_t size));
extern void free JPP((void *ptr));
#endif

#ifndef SEEK_SET		/* pre-ANSI systems may not define this; */
#define SEEK_SET  0		/* if not, assume 0 is correct */
#endif


/*
 * Memory allocation and freeing are controlled by the regular library
 * routines malloc() and free().
 */

GLOBAL(void *)
jpeg_get_small (j_common_ptr cinfo, size_t sizeofobject)
{
  return (void *) malloc(sizeofobject);
}

GLOBAL(void)
jpeg_free_small (j_common_ptr cinfo, void * object, size_t sizeofobject)
{
  free(object);
}


/*
 * "Large" objects are treated the same as "small" ones.
 * NB: although we include FAR keywords in the routine declarations,
 * this file won't actually work in 80x86 small/medium model; at least,
 * you probably won't be able to process useful-size images in only 64KB.
 */

GLOBAL(void FAR *)
jpeg_get_large (j_common_ptr cinfo, size_t sizeofobject)
{
  return (void FAR *) malloc(sizeofobject);
}

GLOBAL(void)
jpeg_free_large (j_common_ptr cinfo, void FAR * object, size_t sizeofobject)
{
  free(object);
}


/*
 * This routine computes the total memory space available for allocation.
 * It's impossible to do this in a portable way; our current solution is
 * to make the user tell us (with a default value set at compile time).
 * If you can actually get the available space, it's a good idea to subtract
 * a slop factor of 5% or so.
 */

#ifndef DEFAULT_MAX_MEM		/* so can override from makefile */
#define DEFAULT_MAX_MEM		1000000L /* default: one megabyte */
#endif

GLOBAL(long)
jpeg_mem_available (j_common_ptr cinfo, long min_bytes_needed,
		    long max_bytes_needed, long already_allocated)
{
  return cinfo->mem->max_memory_to_use - already_allocated;
}


/*
 * Backing store (temporary file) management.
 * Backing store objects are only used when the value returned by
 * jpeg_mem_available is less than the total space needed.  You can dispense
 * with these routines if you have plenty of virtual memory; see jmemnobs.c.
 */


METHODDEF(void)
read_backing_store (j_common_ptr cinfo, backing_store_ptr info,
		    void FAR * buffer_address,
		    long file_offset, long byte_count)
{
  if (fseek(info->temp_file, file_offset, SEEK_SET))
    ERREXIT(cinfo, JERR_TFILE_SEEK);
  if (JFREAD(info->temp_file, buffer_address, byte_count)
      != (size_t) byte_count)
    ERREXIT(cinfo, JERR_TFILE_READ);
}


METHODDEF(void)
write_backing_store (j_common_ptr cinfo, backing_store_ptr info,
		     void FAR * buffer_address,
		     long file_offset, long byte_count)
{
  if (fseek(info->temp_file, file_offset, SEEK_SET))
    ERREXIT(cinfo, JERR_TFILE_SEEK);
  if (JFWRITE(info->temp_file, buffer_address, byte_count)
      != (size_t) byte_count)
    ERREXIT(cinfo, JERR_TFILE_WRITE);
}


METHODDEF(void)
close_backing_store (j_common_ptr cinfo, backing_store_ptr info)
{
  fclose(info->temp_file);
  /* Since this implementation uses tmpfile() to create the file,
   * no explicit file deletion is needed.
   */
}


/*
 * Initial opening of a backing-store object.
 *
 * This version uses tmpfile(), which constructs a suitable file name
 * behind the scenes.  We don't have to use info->temp_name[] at all;
 * indeed, we can't even find out the actual name of the temp file.
 */

GLOBAL(void)
jpeg_open_backing_store (j_common_ptr cinfo, backing_store_ptr info,
			 long total_bytes_needed)
{
  if ((info->temp_file = tmpfile()) == NULL)
    ERREXITS(cinfo, JERR_TFILE_CREATE, "");
  info->read_backing_store = read_backing_store;
  info->write_backing_store = write_backing_store;
  info->close_backing_store = close_backing_store;
}


/*
 * These routines take care of any system-dependent initialization and
 * cleanup required.
 */

GLOBAL(long)
jpeg_mem_init (j_common_ptr cinfo)
{
  return DEFAULT_MAX_MEM;	/* default for max_memory_to_use */
}

GLOBAL(void)
jpeg_mem_term (j_common_ptr cinfo)
{
  /* no work */
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕欧美日韩一区| 国产综合色视频| av亚洲精华国产精华精华| 国产三级一区二区| 精品噜噜噜噜久久久久久久久试看 | 亚洲一区二区三区四区在线观看| 久久一区二区三区国产精品| 337p亚洲精品色噜噜| 欧美日韩卡一卡二| 欧美视频一区在线| 91麻豆精品久久久久蜜臀| 欧美日韩在线播放一区| 欧美日韩视频在线一区二区| 在线亚洲一区二区| 日韩一区欧美一区| 国内精品第一页| 图片区日韩欧美亚洲| 国产日韩欧美综合一区| 在线播放视频一区| 97se亚洲国产综合在线| 国产成人免费9x9x人网站视频| 天天操天天色综合| 亚洲欧洲av在线| 久久久久久久久久久电影| 欧美丰满少妇xxxxx高潮对白| 99热在这里有精品免费| 国产成人亚洲综合a∨婷婷| 麻豆国产精品官网| 久久电影网电视剧免费观看| 六月丁香婷婷色狠狠久久| 日韩高清中文字幕一区| 免费一级欧美片在线观看| 日日夜夜免费精品| 精品一区二区三区视频 | 国产校园另类小说区| www亚洲一区| 日韩精品色哟哟| 久久精品国产精品青草| 欧美日韩亚洲综合一区| 日韩精品一二三四| 日韩精品在线一区| 色综合天天视频在线观看| 蜜臀久久99精品久久久久宅男 | 91精品欧美一区二区三区综合在| 色偷偷成人一区二区三区91| 在线免费亚洲电影| 日韩一级二级三级精品视频| 久久精品在线观看| 综合色中文字幕| 日本中文在线一区| 成人激情黄色小说| 欧美日韩国产精品成人| 精品人在线二区三区| 亚洲欧洲另类国产综合| 青青草精品视频| 色播五月激情综合网| 国产亚洲午夜高清国产拍精品| 一区二区三区不卡视频| 国产一区二区在线影院| 欧美三级电影网站| 亚洲色图视频网站| 狠狠色综合播放一区二区| 91成人免费网站| 国产精品日韩精品欧美在线| 国产一区二区三区不卡在线观看| 色综合激情五月| 亚洲欧美影音先锋| 国产91综合一区在线观看| 精品久久久久久久久久久久久久久久久 | 色爱区综合激月婷婷| 国产精品午夜在线观看| 风间由美中文字幕在线看视频国产欧美 | 亚洲免费视频成人| 日本道在线观看一区二区| 亚洲自拍与偷拍| 欧美日韩免费一区二区三区| 国产一区二区视频在线播放| 在线观看欧美日本| 亚洲黄色片在线观看| 在线免费观看日本欧美| 夜夜精品视频一区二区| 欧美视频完全免费看| 婷婷激情综合网| 精品日韩一区二区三区| 成人激情av网| 亚洲国产综合在线| 日韩限制级电影在线观看| 国产精品影视天天线| 一区精品在线播放| 欧美片在线播放| 成人不卡免费av| 日本午夜精品一区二区三区电影| 日韩欧美激情在线| 91香蕉视频mp4| 久国产精品韩国三级视频| 日韩理论片网站| 2024国产精品| 欧美日韩激情在线| 国产91精品免费| 麻豆91在线观看| 亚洲国产日韩av| 中文字幕一区在线| 精品电影一区二区三区| 欧美优质美女网站| 国产很黄免费观看久久| 免费人成精品欧美精品| 一区二区三区美女| 综合av第一页| 中文字幕在线播放不卡一区| 久久久噜噜噜久久中文字幕色伊伊| 91女厕偷拍女厕偷拍高清| 福利一区二区在线| 成人黄色网址在线观看| 福利91精品一区二区三区| 国产美女娇喘av呻吟久久| 激情综合网最新| 国产主播一区二区| 韩国精品主播一区二区在线观看 | 国产午夜精品在线观看| 久久色视频免费观看| 国产欧美日韩精品a在线观看| 日韩久久精品一区| 中文字幕成人网| 亚洲另类春色校园小说| 五月天久久比比资源色| 麻豆精品一区二区综合av| 国产福利一区在线| 91在线视频免费观看| 欧美高清视频不卡网| 日韩精品一区二区三区四区视频| 久久亚洲精品国产精品紫薇| 欧美国产在线观看| 日本少妇一区二区| 91网上在线视频| 欧美成人国产一区二区| 亚洲色图.com| 久久国产精品第一页| 91香蕉国产在线观看软件| 日韩西西人体444www| 亚洲尤物在线视频观看| 99r精品视频| 五月综合激情婷婷六月色窝| 丁香激情综合国产| 亚洲精品中文字幕乱码三区 | 久久久国产精品午夜一区ai换脸| 亚洲电影在线免费观看| 欧美日韩精品专区| 看电视剧不卡顿的网站| 国产午夜久久久久| 99久久婷婷国产综合精品电影| 亚洲色图一区二区三区| 欧美酷刑日本凌虐凌虐| 老司机午夜精品| 亚洲欧美一区二区三区孕妇| 欧美四级电影网| 国产真实乱偷精品视频免| 中文字幕欧美日本乱码一线二线| 在线一区二区三区做爰视频网站| 偷窥少妇高潮呻吟av久久免费| 3d动漫精品啪啪1区2区免费 | 91亚洲精品乱码久久久久久蜜桃| 亚洲品质自拍视频网站| 日韩视频免费观看高清完整版在线观看 | 久久综合久久鬼色| 成人综合日日夜夜| 丝袜a∨在线一区二区三区不卡 | 午夜电影网亚洲视频| 久久久国产精品不卡| 精品视频在线免费观看| 国产激情一区二区三区| 偷拍与自拍一区| 一区二区三区在线观看国产| 欧美精品一区二区在线播放| 91在线观看一区二区| 青青草原综合久久大伊人精品 | 亚洲综合偷拍欧美一区色| 成人黄色免费短视频| 成人一区二区三区视频| 国产在线一区观看| 国产在线视频一区二区| 日韩av成人高清| 丝袜国产日韩另类美女| 夜夜精品视频一区二区| 亚洲欧美日韩精品久久久久| 中文字幕一区二区三区在线观看 | 日韩av中文在线观看| 日本特黄久久久高潮| 人人爽香蕉精品| 国产一二精品视频| 成人黄色在线视频| 色婷婷综合久色| 正在播放亚洲一区| 日韩一区二区三区在线观看| 91麻豆精品国产91久久久更新时间| 欧美中文字幕一区| 欧美在线看片a免费观看| 欧美一区二区三区在线观看| 欧美影片第一页| 2024国产精品| 亚洲精品va在线观看|