--- parser3/src/classes/image.C 2002/11/29 12:13:42 1.89 +++ parser3/src/classes/image.C 2003/03/17 14:48:04 1.90.4.1 @@ -1,11 +1,11 @@ /** @file Parser: @b image parser class. - Copyright(c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) + Copyright(c) 2001, 2003 ArtLebedev Group (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ -static const char* IDENT_IMAGE_C="$Date: 2002/11/29 12:13:42 $"; +static const char* IDENT_IMAGE_C="$Date: 2003/03/17 14:48:04 $"; /* jpegsize: gets the width and height (in pixels) of a jpeg file @@ -60,7 +60,7 @@ public: if(limit==0) return 0; - void *lbuf=pool.malloc(limit); + void *lbuf=pool.malloc_atomic(limit); size_t read_size=(size_t)::read(f, lbuf, limit); abuf=lbuf; if(ssize_t(read_size)<0 || read_size>limit) throw Exception(0, @@ -313,7 +313,7 @@ static Value *parse_IFD_entry_formatted_ for(uint i=0; isize()); + gdImage::Point *all_p=(gdImage::Point *)pool.malloc_atomic(sizeof(gdImage::Point)*table->size()); gdImage::Point *add_p=all_p; table->for_each(add_point, &add_p); image->FilledPolygonReplaceColor(all_p, table->size(), @@ -855,7 +855,7 @@ static void _polyline(Request& r, const &method_name, "coordinates must be table"); - gdImage::Point *all_p=(gdImage::Point *)pool.malloc(sizeof(gdImage::Point)*table->size()); + gdImage::Point *all_p=(gdImage::Point *)pool.malloc_atomic(sizeof(gdImage::Point)*table->size()); gdImage::Point *add_p=all_p; table->for_each(add_point, &add_p); image->Polygon(all_p, table->size(), @@ -878,7 +878,7 @@ static void _polygon(Request& r, const S &method_name, "coordinates must be table"); - gdImage::Point *all_p=(gdImage::Point *)pool.malloc(sizeof(gdImage::Point)*table->size()); + gdImage::Point *all_p=(gdImage::Point *)pool.malloc_atomic(sizeof(gdImage::Point)*table->size()); gdImage::Point *add_p=all_p; table->for_each(add_point, &add_p); image->Polygon(all_p, table->size(), @@ -900,7 +900,7 @@ static void _polybar(Request& r, const S &method_name, "coordinates must be table"); - gdImage::Point *all_p=(gdImage::Point *)pool.malloc(sizeof(gdImage::Point)*table->size()); + gdImage::Point *all_p=(gdImage::Point *)pool.malloc_atomic(sizeof(gdImage::Point)*table->size()); gdImage::Point *add_p=all_p; table->for_each(add_point, &add_p); image->FilledPolygon(all_p, table->size(),