Fix problem with cairo on nodejs
This commit is contained in:
@@ -57,7 +57,7 @@ abstract CairoSurface(Dynamic) {
|
|||||||
public static function fromImage (image:Image):CairoSurface {
|
public static function fromImage (image:Image):CairoSurface {
|
||||||
|
|
||||||
#if lime_cairo
|
#if lime_cairo
|
||||||
return createForData (image.data.buffer.__getNativePointer (), CairoFormat.ARGB32, image.width, image.height, image.buffer.stride);
|
return createForData (#if nodejs lime_buffer_get_native_pointer (image.data) #else image.data.buffer.__getNativePointer () #end, CairoFormat.ARGB32, image.width, image.height, image.buffer.stride);
|
||||||
#else
|
#else
|
||||||
return null;
|
return null;
|
||||||
#end
|
#end
|
||||||
@@ -108,6 +108,7 @@ abstract CairoSurface(Dynamic) {
|
|||||||
private static var lime_cairo_image_surface_get_width = System.load ("lime", "lime_cairo_image_surface_get_width", 1);
|
private static var lime_cairo_image_surface_get_width = System.load ("lime", "lime_cairo_image_surface_get_width", 1);
|
||||||
private static var lime_cairo_surface_destroy = System.load ("lime", "lime_cairo_surface_destroy", 1);
|
private static var lime_cairo_surface_destroy = System.load ("lime", "lime_cairo_surface_destroy", 1);
|
||||||
private static var lime_cairo_surface_flush = System.load ("lime", "lime_cairo_surface_flush", 1);
|
private static var lime_cairo_surface_flush = System.load ("lime", "lime_cairo_surface_flush", 1);
|
||||||
|
private static var lime_buffer_get_native_pointer = System.load ("lime", "lime_buffer_get_native_pointer", 1);
|
||||||
#end
|
#end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -146,6 +146,12 @@ namespace lime {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
value lime_buffer_get_native_pointer (buffer inBuffer) {
|
||||||
|
|
||||||
|
return alloc_float ((intptr_t)buffer_data (inBuffer));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
value lime_byte_array_init (value inFactory, value inLen, value inResize, value inBytes) {
|
value lime_byte_array_init (value inFactory, value inLen, value inResize, value inBytes) {
|
||||||
|
|
||||||
@@ -202,5 +208,7 @@ namespace lime {
|
|||||||
DEFINE_PRIM (lime_byte_array_overwrite_file, 2);
|
DEFINE_PRIM (lime_byte_array_overwrite_file, 2);
|
||||||
DEFINE_PRIM (lime_byte_array_read_file, 1);
|
DEFINE_PRIM (lime_byte_array_read_file, 1);
|
||||||
|
|
||||||
|
DEFINE_PRIM (lime_buffer_get_native_pointer, 1);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user