[xiph-commits] r13630 - trunk/vorbis/include/vorbis

erikd at svn.xiph.org erikd at svn.xiph.org
Sat Aug 25 17:38:33 PDT 2007


Author: erikd
Date: 2007-08-25 17:38:33 -0700 (Sat, 25 Aug 2007)
New Revision: 13630

Modified:
   trunk/vorbis/include/vorbis/vorbisfile.h
Log:
include/vorbis/vorbisfile.h : Add comments about a desired change that cannot be made until we're willing to break ABI compatibility.

Modified: trunk/vorbis/include/vorbis/vorbisfile.h
===================================================================
--- trunk/vorbis/include/vorbis/vorbisfile.h	2007-08-26 00:24:57 UTC (rev 13629)
+++ trunk/vorbis/include/vorbis/vorbisfile.h	2007-08-26 00:38:33 UTC (rev 13630)
@@ -53,6 +53,19 @@
   return fseek(f,off,whence);
 }
 
+/* These structs below (OV_CALLBACKS_DEFAULT etc)are defined here as static
+ * data. That means that every file which includes this header will get its
+ * own copy of these structs whether it uses them or not.
+ *
+ * It would be *much* better to move these the vorbisfile.c, make them
+ * publicly available and then define them here as externs so that
+ * only one copy of them (the one in the library's vorbisfile.c) is ever
+ * created.
+ *
+ * Unfortunately this cannot be done at the moment because doing so would
+ * break the libvorbisfile ABI. A good time to do that would be at some
+ * other time when the ABI is being broken for some other reason. */
+
 static ov_callbacks OV_CALLBACKS_DEFAULT = {
   (size_t (*)(void *, size_t, size_t, void *))  fread,
   (int (*)(void *, ogg_int64_t, int))           _ov_header_fseek_wrap,



More information about the commits mailing list