Still handle `__FTERRORS_H__'. We need this for backwards compatibility. Problem reported by John Emmas <johne53@tiscali.co.uk>. * include/freetype/fterrors.h: Fix inclusion guard so that undefining either `FTERRORS_H_' or `__FTERRORS_H__' works as expected.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
diff --git a/ChangeLog b/ChangeLog
index 721c5d9..d2fc27f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2016-01-20 Werner Lemberg <wl@gnu.org>
+
+ Still handle `__FTERRORS_H__'.
+
+ We need this for backwards compatibility.
+
+ Problem reported by John Emmas <johne53@tiscali.co.uk>.
+
+ * include/freetype/fterrors.h: Fix inclusion guard so that
+ undefining either `FTERRORS_H_' or `__FTERRORS_H__' works as
+ expected.
+
2016-01-19 Werner Lemberg <wl@gnu.org>
[autofit] Fix handling of default script.
diff --git a/include/freetype/fterrors.h b/include/freetype/fterrors.h
index 64839b7..e15bfb0 100644
--- a/include/freetype/fterrors.h
+++ b/include/freetype/fterrors.h
@@ -99,8 +99,18 @@
/* */
-#ifndef FTERRORS_H_
+ /* In previous FreeType versions we used `__FTERRORS_H__'. However, */
+ /* using two successive underscores in a non-system symbol name */
+ /* violates the C (and C++) standard, so it was changed to the */
+ /* current form. In spite of this, we have to make */
+ /* */
+ /* #undefine __FTERRORS_H__ */
+ /* */
+ /* work for backwards compatibility. */
+ /* */
+#if !( defined( FTERRORS_H_ ) && defined ( __FTERRORS_H__ ) )
#define FTERRORS_H_
+#define __FTERRORS_H__
/* include module base error codes */
@@ -210,7 +220,7 @@
#undef FT_ERR_PREFIX
#endif
-#endif /* FTERRORS_H_ */
+#endif /* !(FTERRORS_H_ && __FTERRORS_H__) */
/* END */