Update of /cvsroot/libexif/libexif/libexif
In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv13727/libexif
Modified Files:
exif.h
Log Message:
Document that libexif is now thread safe (when used appropriately).
Also, clarify the string encoding issue since gettext takes care of converting
strings into the appropriate locale's encoding.
Index: exif.h
===================================================================
RCS file: /cvsroot/libexif/libexif/libexif/exif.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -p -d -r1.7 -r1.8
--- exif.h 26 Jun 2007 02:07:59 -0000 1.7
+++ exif.h 19 Nov 2008 08:14:44 -0000 1.8
@@ -1,7 +1,7 @@
/*! \file exif.h exif/exif.h
- * \brief Dummy header file
+ * \brief Dummy header file for documentation purposes
* \date 2007
- * \author Hans Ulrich Niedermann
+ * \author Hans Ulrich Niedermann, et. al.
*
* \mainpage The libexif library
*
@@ -19,8 +19,10 @@
*
* \section string_conventions String Conventions
*
- * Strings of 8 bit characters ("char*"). Character set and encoding
- * are currently undefined, but that will change in the future.
+ * Strings of 8 bit characters ("char*"). When libexif is compiled with
+ * NLS, character set and encoding are as set in the current locale,
+ * except for strings that come directly from the data in EXIF
+ * tags which are returned in raw form.
*
* \section memory_management Memory Management Patterns
*
@@ -35,6 +37,15 @@
*
* \section thread_safety Thread Safety
*
- * FIXME: Good question. Needs to be determined.
+ * libexif is thread safe when the underlying C library is also thread safe.
+ * Some libraries may require defining a special macro (like _REENTRANT)
+ * to ensure this, or may require linking to a special thread-safe version of
+ * the library.
+ *
+ * The programmer must ensure that each object allocated by libexif is only
+ * used in a single thread at once. For example, an ExifData* allocated
+ * in one thread can't be used in a second thread if there is any chance
+ * that the first thread could use it at the same time. Two threads
+ * can use libexif without issues if they never share handles.
*
*/
|