aboutsummaryrefslogtreecommitdiff
path: root/lib/gdi/picload.cpp
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-11-23 14:11:42 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-11-23 14:11:42 +0000
commit2d29b4a868272f9e844f12f571148e2d6608abe9 (patch)
tree2173239df6440634c7ade9896bf2e5a66509aba6 /lib/gdi/picload.cpp
parenta0f23d0986f3af9d66367c617677f8a275b72737 (diff)
downloadenigma2-2d29b4a868272f9e844f12f571148e2d6608abe9.tar.gz
enigma2-2d29b4a868272f9e844f12f571148e2d6608abe9.zip
use stack for exif object
Diffstat (limited to 'lib/gdi/picload.cpp')
-rw-r--r--lib/gdi/picload.cpp58
1 files changed, 28 insertions, 30 deletions
diff --git a/lib/gdi/picload.cpp b/lib/gdi/picload.cpp
index d724bfcf..b3ffe2a8 100644
--- a/lib/gdi/picload.cpp
+++ b/lib/gdi/picload.cpp
@@ -336,60 +336,58 @@ static int png_load(const char *filename, int *x, int *y)
PyObject *getExif(const char *filename)
{
PyObject *list = 0;
- Cexif *m_exif = new Cexif();
- if(m_exif->DecodeExif(filename))
+ Cexif exif;
+ if(exif.DecodeExif(filename))
{
- if(m_exif->m_exifinfo->IsExif)
+ if(exif.m_exifinfo->IsExif)
{
int pos=0;
char tmp[256];
list = PyList_New(22);
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->Version));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->CameraMake));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->CameraModel));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->DateTime));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->Comments));
- PyList_SET_ITEM(list, pos++, PyString_FromFormat("%d x %d", m_exif->m_exifinfo->Width, m_exif->m_exifinfo->Height));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->Orientation));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->MeteringMode));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->ExposureProgram));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->LightSource));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->FlashUsed));
- PyList_SET_ITEM(list, pos++, PyString_FromFormat("%d", m_exif->m_exifinfo->CompressionLevel));
- PyList_SET_ITEM(list, pos++, PyString_FromFormat("%d", m_exif->m_exifinfo->ISOequivalent));
- sprintf(tmp, "%.2f", m_exif->m_exifinfo->Xresolution);
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->Version));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->CameraMake));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->CameraModel));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->DateTime));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->Comments));
+ PyList_SET_ITEM(list, pos++, PyString_FromFormat("%d x %d", exif.m_exifinfo->Width, exif.m_exifinfo->Height));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->Orientation));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->MeteringMode));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->ExposureProgram));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->LightSource));
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->FlashUsed));
+ PyList_SET_ITEM(list, pos++, PyString_FromFormat("%d", exif.m_exifinfo->CompressionLevel));
+ PyList_SET_ITEM(list, pos++, PyString_FromFormat("%d", exif.m_exifinfo->ISOequivalent));
+ sprintf(tmp, "%.2f", exif.m_exifinfo->Xresolution);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- sprintf(tmp, "%.2f", m_exif->m_exifinfo->Yresolution);
+ sprintf(tmp, "%.2f", exif.m_exifinfo->Yresolution);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- PyList_SET_ITEM(list, pos++, PyString_FromString(m_exif->m_exifinfo->ResolutionUnit));
- sprintf(tmp, "%.2f", m_exif->m_exifinfo->Brightness);
+ PyList_SET_ITEM(list, pos++, PyString_FromString(exif.m_exifinfo->ResolutionUnit));
+ sprintf(tmp, "%.2f", exif.m_exifinfo->Brightness);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- sprintf(tmp, "%.5f sec.", m_exif->m_exifinfo->ExposureTime);
+ sprintf(tmp, "%.5f sec.", exif.m_exifinfo->ExposureTime);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- sprintf(tmp, "%.5f", m_exif->m_exifinfo->ExposureBias);
+ sprintf(tmp, "%.5f", exif.m_exifinfo->ExposureBias);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- sprintf(tmp, "%.5f", m_exif->m_exifinfo->Distance);
+ sprintf(tmp, "%.5f", exif.m_exifinfo->Distance);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- sprintf(tmp, "%.5f", m_exif->m_exifinfo->CCDWidth);
+ sprintf(tmp, "%.5f", exif.m_exifinfo->CCDWidth);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
- sprintf(tmp, "%.2f", m_exif->m_exifinfo->ApertureFNumber);
+ sprintf(tmp, "%.2f", exif.m_exifinfo->ApertureFNumber);
PyList_SET_ITEM(list, pos++, PyString_FromString(tmp));
}
else
{
list = PyList_New(1);
- PyList_SET_ITEM(list, 0, PyString_FromString(m_exif->m_szLastError));
+ PyList_SET_ITEM(list, 0, PyString_FromString(exif.m_szLastError));
}
- m_exif->ClearExif();
+ exif.ClearExif();
}
else
{
list = PyList_New(1);
- PyList_SET_ITEM(list, 0, PyString_FromString(m_exif->m_szLastError));
+ PyList_SET_ITEM(list, 0, PyString_FromString(exif.m_szLastError));
}
- delete m_exif;
-
return list ? list : PyList_New(0);
}