Beispiel #1
0
	void zbar_image_set_data (zbar_image_t *img,
		const void *data,
		unsigned long len,
		zbar_image_cleanup_handler_t *cleanup)
	{
		zbar_image_free_data(img);
		img->data = data;
		img->datalen = len;
		img->cleanup = cleanup;
	}
Beispiel #2
0
static int
image_set_data (zbarImage *self,
                PyObject *value,
                void *closure)
{
    if(!value) {
        zbar_image_free_data(self->zimg);
        return(0);
    }
    char *data;
    Py_ssize_t datalen;
    if(PyString_AsStringAndSize(value, &data, &datalen))
        return(-1);

    Py_INCREF(value);
    zbar_image_set_data(self->zimg, data, datalen, image_cleanup);
    assert(!self->data);
    self->data = value;
    zbar_image_set_userdata(self->zimg, self);
    return(0);
}