--- parser3/src/classes/image.C 2012/03/16 09:24:07 1.139 +++ parser3/src/classes/image.C 2012/06/15 11:54:18 1.142 @@ -25,7 +25,7 @@ #include "pa_vdate.h" #include "pa_table.h" -volatile const char * IDENT_IMAGE_C="$Id: image.C,v 1.139 2012/03/16 09:24:07 moko Exp $"; +volatile const char * IDENT_IMAGE_C="$Id: image.C,v 1.142 2012/06/15 11:54:18 moko Exp $"; // defines @@ -894,12 +894,7 @@ static void _gif(Request& r, MethodParam VFile& vfile=*new VFile; - vfile.set(false/*not tainted*/, - (const char*)buf.ptr, buf.size, - file_name, - new VString(*new String("image/gif"))); - - vfile.set_mode(false/*binary*/); + vfile.set_binary(false/*not tainted*/, (const char *)buf.ptr, buf.size, file_name, new VString(*new String("image/gif"))); r.write_no_lang(vfile); } @@ -975,11 +970,7 @@ static void _replace(Request& r, MethodP gdImage::Point* all_p=0; size_t count=0; if(params.count() == 3){ - Table* table=params.as_no_junction(2, COORDINATES_MUST_NOT_BE_CODE).get_table(); - if(!table) - throw Exception(PARSER_RUNTIME, - 0, - "coordinates must be table"); + Table* table=params.as_table(2, "coordinates"); count=table->count(); all_p=new(PointerFreeGC) gdImage::Point[count]; gdImage::Point* add_p=all_p; @@ -1005,11 +996,7 @@ static void _replace(Request& r, MethodP static void _polyline(Request& r, MethodParams& params) { gdImage& image=GET_SELF(r, VImage).image(); - Table* table=params.as_no_junction(1, COORDINATES_MUST_NOT_BE_CODE).get_table(); - if(!table) - throw Exception(PARSER_RUNTIME, - 0, - "coordinates must be table"); + Table* table=params.as_table(1, "coordinates"); gdImage::Point* all_p=new(PointerFreeGC) gdImage::Point[table->count()]; gdImage::Point *add_p=all_p; @@ -1022,11 +1009,7 @@ static void _polyline(Request& r, Method static void _polygon(Request& r, MethodParams& params) { gdImage& image=GET_SELF(r, VImage).image(); - Table* table=params.as_no_junction(1, COORDINATES_MUST_NOT_BE_CODE).get_table(); - if(!table) - throw Exception(PARSER_RUNTIME, - 0, - "coordinates must be table"); + Table* table=(Table*)params.as_table(1, "coordinates"); gdImage::Point* all_p=new(PointerFreeGC) gdImage::Point[table->count()]; gdImage::Point *add_p=all_p; @@ -1038,11 +1021,7 @@ static void _polygon(Request& r, MethodP static void _polybar(Request& r, MethodParams& params) { gdImage& image=GET_SELF(r, VImage).image(); - Table* table=params.as_no_junction(1, COORDINATES_MUST_NOT_BE_CODE).get_table(); - if(!table) - throw Exception(PARSER_RUNTIME, - 0, - "coordinates must be table"); + Table* table=(Table*)params.as_table(1, "coordinates"); gdImage::Point* all_p=new(PointerFreeGC) gdImage::Point[table->count()]; gdImage::Point *add_p=all_p;