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

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

?? jmemansi.c

?? JPEG source code converts the image into compressed format
?? C
字號(hào):
/*
 * 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 */
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线一区二区三区四区五区 | 在线不卡免费av| 久久99国产精品免费| 亚洲欧洲三级电影| 日韩精品自拍偷拍| 欧美视频一区在线| 91免费观看视频在线| 国产一区二区毛片| 日本伊人色综合网| 亚洲欧美乱综合| 欧美mv日韩mv| 日本韩国精品一区二区在线观看| 蜜臂av日日欢夜夜爽一区| 国产精品电影一区二区| 91精品欧美综合在线观看最新| 美女在线一区二区| 久久九九全国免费| 欧美少妇性性性| 国产99一区视频免费| 亚洲国产成人高清精品| 欧美高清在线精品一区| 日本精品一区二区三区四区的功能| 亚洲综合激情另类小说区| 7777精品伊人久久久大香线蕉超级流畅| 国产凹凸在线观看一区二区| 亚洲码国产岛国毛片在线| 久久久亚洲精华液精华液精华液| 欧美日韩美女一区二区| 99综合电影在线视频| 久久国产剧场电影| 亚洲一区二区三区在线看| 中文字幕一区二| 欧美一级精品在线| 欧美人妇做爰xxxⅹ性高电影| 成人av网址在线| 国产美女视频一区| 青青草成人在线观看| 香蕉久久夜色精品国产使用方法 | 欧美电影在哪看比较好| 99久久精品一区| 国产91精品在线观看| 精品亚洲aⅴ乱码一区二区三区| 亚洲一级不卡视频| 亚洲欧美综合色| 国产精品美女视频| 欧美经典一区二区三区| 久久综合色之久久综合| 欧美xxxxxxxx| 日韩精品在线网站| 日韩三级视频中文字幕| 色婷婷综合久久久久中文一区二区| 国产乱码一区二区三区| 蜜臀久久99精品久久久久宅男 | 一区二区三区在线视频免费| 精品久久久久久久一区二区蜜臀| 欧美日韩视频在线第一区| 99久久99久久综合| 91香蕉视频mp4| 色综合色综合色综合| 在线欧美一区二区| 在线欧美小视频| 欧美午夜寂寞影院| 成人av资源下载| 国产99久久久精品| 波多野结衣在线一区| 国产精品一区二区男女羞羞无遮挡 | 成+人+亚洲+综合天堂| 成年人午夜久久久| 日本国产一区二区| 欧美三级一区二区| 制服丝袜在线91| 日韩欧美第一区| 精品国产污网站| 久久精品一区四区| 国产精品视频yy9299一区| 中文字幕视频一区| 亚洲尤物在线视频观看| 天天爽夜夜爽夜夜爽精品视频| 日韩制服丝袜先锋影音| 欧美色大人视频| 在线成人高清不卡| 久久这里只有精品首页| 欧美激情中文字幕| 亚洲一区自拍偷拍| 老司机精品视频线观看86| 国内精品在线播放| 成人福利在线看| 欧美午夜影院一区| 日韩精品一区二区三区中文精品| 久久精品水蜜桃av综合天堂| 综合久久久久综合| 亚洲国产一区二区视频| 另类小说图片综合网| 成人免费视频视频在线观看免费| 91在线免费视频观看| 这里只有精品免费| 国产精品欧美一区二区三区| 亚洲地区一二三色| 懂色av一区二区夜夜嗨| 欧美在线观看视频一区二区三区| 欧美mv日韩mv国产网站app| 欧美国产精品一区二区| 青娱乐精品视频| 国产成人免费网站| 555夜色666亚洲国产免| 国产精品美女久久久久久| 亚洲成人av免费| 国产.欧美.日韩| 91精品国产色综合久久ai换脸| 国产清纯白嫩初高生在线观看91| 亚洲五码中文字幕| 成人一级黄色片| 7777女厕盗摄久久久| 国产精品久久久久久久久果冻传媒| 午夜精品123| 91一区二区三区在线观看| 欧美成人vr18sexvr| 亚洲成人自拍一区| 91浏览器入口在线观看| 久久综合狠狠综合久久综合88| 亚洲在线视频网站| 99re成人在线| 久久免费看少妇高潮| 一区二区激情视频| 国产成人免费xxxxxxxx| 欧美一区在线视频| 亚洲午夜免费福利视频| 99视频超级精品| 国产欧美一区二区三区鸳鸯浴 | 久久99精品国产麻豆不卡| 色综合久久久久网| 中文字幕免费观看一区| 麻豆成人av在线| 欧美日韩一区二区三区四区| 亚洲欧洲综合另类| 国产成+人+日韩+欧美+亚洲| 日韩精品中文字幕一区二区三区| 婷婷综合五月天| 欧美在线一区二区三区| 亚洲欧美日韩国产手机在线 | 五月天国产精品| 在线视频一区二区免费| 亚洲少妇中出一区| 丁香六月久久综合狠狠色| 欧美精品一区二区精品网| 青草av.久久免费一区| 欧美日本免费一区二区三区| 亚洲影院免费观看| 在线欧美日韩国产| 一区二区三国产精华液| 91麻豆成人久久精品二区三区| 中文在线一区二区| 国产激情一区二区三区四区| 日韩欧美色电影| 国产99一区视频免费| 国产精品丝袜一区| av电影在线观看完整版一区二区| 国产欧美中文在线| bt欧美亚洲午夜电影天堂| 国产精品蜜臀在线观看| 91蜜桃视频在线| 亚洲成在人线在线播放| 91超碰这里只有精品国产| 免费一级欧美片在线观看| 欧美一区永久视频免费观看| 蜜臀国产一区二区三区在线播放| 99re热视频精品| 亚洲欧美综合色| 91麻豆成人久久精品二区三区| 亚洲欧美激情在线| 欧美日韩一区中文字幕| 美女爽到高潮91| 国产日韩精品一区| 99re66热这里只有精品3直播 | 欧美精品1区2区| 久久成人久久爱| 国产三级欧美三级| 97se亚洲国产综合自在线观| 亚洲一区二区三区四区在线观看 | 亚洲丝袜自拍清纯另类| 色一情一乱一乱一91av| 日韩电影在线观看电影| 久久这里都是精品| 国产主播一区二区| 久久一日本道色综合| 国产一区二区久久| 亚洲九九爱视频| 在线观看精品一区| 久久国产福利国产秒拍| 国产精品久久久久9999吃药| 在线免费亚洲电影| 韩日欧美一区二区三区| 日韩伦理av电影| 欧美一区二区精品| 丁香网亚洲国际| 午夜久久久久久电影| 久久久久久久久久看片| 色欧美片视频在线观看| 久久99精品网久久| 一区二区三区欧美日|