[HarfBuzz] harfbuzz-ng: Branch 'master' - 5 commits

Behdad Esfahbod behdad at kemper.freedesktop.org
Tue Apr 26 22:41:54 PDT 2011


 COPYING                                 |   15 +--
 src/hb-blob-private.hh                  |    5 -
 src/hb-blob.cc                          |    4 
 src/hb-blob.h                           |    2 
 src/hb-buffer-private.hh                |   13 +-
 src/hb-buffer.cc                        |    8 -
 src/hb-buffer.h                         |    6 -
 src/hb-common.cc                        |    4 
 src/hb-common.h                         |    4 
 src/hb-font-private.hh                  |   11 +-
 src/hb-font.cc                          |    9 +
 src/hb-font.h                           |    2 
 src/hb-ft.cc                            |    7 -
 src/hb-ft.h                             |    2 
 src/hb-glib.cc                          |    7 +
 src/hb-glib.h                           |    4 
 src/hb-icu.cc                           |    9 +
 src/hb-icu.h                            |    4 
 src/hb-object-private.hh                |  145 +++++++++++++++-----------------
 src/hb-open-file-private.hh             |    2 
 src/hb-open-type-private.hh             |    2 
 src/hb-ot-head-private.hh               |    2 
 src/hb-ot-layout-common-private.hh      |    4 
 src/hb-ot-layout-gdef-private.hh        |    4 
 src/hb-ot-layout-gpos-private.hh        |    4 
 src/hb-ot-layout-gsub-private.hh        |    4 
 src/hb-ot-layout-gsubgpos-private.hh    |    4 
 src/hb-ot-layout-private.hh             |    2 
 src/hb-ot-layout.cc                     |    6 -
 src/hb-ot-layout.h                      |    2 
 src/hb-ot-map-private.hh                |    4 
 src/hb-ot-map.cc                        |    4 
 src/hb-ot-shape-complex-arabic-table.hh |    2 
 src/hb-ot-shape-complex-arabic.cc       |    2 
 src/hb-ot-shape-complex-private.hh      |    2 
 src/hb-ot-shape-private.hh              |    2 
 src/hb-ot-shape.cc                      |    4 
 src/hb-ot-shape.h                       |    2 
 src/hb-ot-tag.cc                        |    4 
 src/hb-ot-tag.h                         |    2 
 src/hb-ot.h                             |    2 
 src/hb-private.hh                       |   29 +++++-
 src/hb-shape.cc                         |    2 
 src/hb-shape.h                          |    2 
 src/hb-unicode-private.hh               |   10 +-
 src/hb-unicode.cc                       |    7 -
 src/hb-unicode.h                        |    4 
 src/hb-view.c                           |    4 
 src/hb.h                                |    2 
 src/main.cc                             |    2 
 src/test.c                              |    2 
 test/hb-test.h                          |   17 +++
 test/test-buffer.c                      |    2 
 test/test-c.c                           |    2 
 test/test-common.c                      |    2 
 test/test-cplusplus.cc                  |    2 
 test/test-unicode.c                     |    2 
 57 files changed, 238 insertions(+), 180 deletions(-)

New commits:
commit ebdc83467c31574daa118fc18cd2ef2dc819b503
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Apr 27 01:41:24 2011 -0400

    Don't return in void function
    
    Would have been nice if gcc had warned...

diff --git a/src/hb-private.hh b/src/hb-private.hh
index 1022213..d299029 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -265,7 +265,7 @@ typedef struct {
   inline void init (int v) { ref_count = v; /* non-atomic is fine */ }
   inline int inc (void) { return hb_atomic_int_fetch_and_add (ref_count,  1); }
   inline int dec (void) { return hb_atomic_int_fetch_and_add (ref_count, -1); }
-  inline void set (int v) { return hb_atomic_int_set (ref_count, v); }
+  inline void set (int v) { hb_atomic_int_set (ref_count, v); }
 
   inline int get (void) const { return hb_atomic_int_get (ref_count); }
   inline bool is_invalid (void) const { return get () == HB_REFERENCE_COUNT_INVALID_VALUE; }
commit ec6f9c2fd03a49d1e91cbaefa5bdbbfb35dff92e
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Thu Apr 21 18:35:58 2011 -0400

    Further simplify object handling

diff --git a/src/hb-object-private.hh b/src/hb-object-private.hh
index 7bad2c7..ff66d1d 100644
--- a/src/hb-object-private.hh
+++ b/src/hb-object-private.hh
@@ -89,34 +89,35 @@ struct _hb_object_header_t {
 };
 
 
+HB_END_DECLS
+
+
+template <typename Type>
+static inline Type *hb_object_create () { return (Type *) hb_object_header_t::create (sizeof (Type)); }
+
+template <typename Type>
+static inline bool hb_object_is_inert (const Type *obj) { return unlikely (obj->header.is_inert()); }
+
+template <typename Type>
+static inline Type *hb_object_reference (Type *obj) { obj->header.reference (); return obj; }
+
+template <typename Type>
+static inline bool hb_object_destroy (Type *obj) { return obj->header.destroy (); }
+
+template <typename Type>
+static inline void hb_object_trace (const Type *obj) { obj->header.trace (__FUNCTION__); }
+
+
+HB_BEGIN_DECLS
+
+
 /* Object allocation and lifecycle manamgement macros */
 
-#define TRACE_OBJECT(obj) \
-	obj->header.trace (__FUNCTION__)
-
-#define HB_OBJECT_IS_INERT(obj) \
-    (unlikely ((obj)->header.is_inert ()))
-
-#define HB_OBJECT_DO_CREATE(Type, obj) \
-  likely (( \
-	  ((obj) = (Type *) hb_object_header_t::create (sizeof (Type))), \
-	  TRACE_OBJECT (obj), \
-	  (obj) \
-	  ))
-
-#define HB_OBJECT_DO_REFERENCE(obj) \
-  HB_STMT_START { \
-    TRACE_OBJECT (obj); \
-    obj->header.reference (); \
-    return obj; \
-  } HB_STMT_END
-
-#define HB_OBJECT_DO_DESTROY(obj) \
-  HB_STMT_START { \
-    TRACE_OBJECT (obj); \
-    if (!obj->header.destroy ()) \
-      return; \
-  } HB_STMT_END
+#define HB_TRACE_OBJECT(obj) hb_object_trace (obj)
+#define HB_OBJECT_DO_CREATE(Type, obj) likely (obj = hb_object_create<Type> ())
+#define HB_OBJECT_IS_INERT(obj) hb_object_is_inert (obj)
+#define HB_OBJECT_DO_REFERENCE(obj) return hb_object_reference (obj)
+#define HB_OBJECT_DO_DESTROY(obj) if (!hb_object_destroy (obj)) return
 
 
 HB_END_DECLS
commit fca368c4682624346a0aaee690e1ad6ed4c0b337
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Thu Apr 21 18:24:02 2011 -0400

    Add hb_object_header_t which is the common part of all objects
    
    Makes way for adding arbitrary user_data support.

diff --git a/src/hb-blob-private.hh b/src/hb-blob-private.hh
index 98ee9ec..5f81e5a 100644
--- a/src/hb-blob-private.hh
+++ b/src/hb-blob-private.hh
@@ -30,12 +30,13 @@
 #include "hb-private.hh"
 
 #include "hb-blob.h"
+#include "hb-object-private.hh"
 
 HB_BEGIN_DECLS
 
 
 struct _hb_blob_t {
-  hb_reference_count_t ref_count;
+  hb_object_header_t header;
 
   unsigned int length;
 
diff --git a/src/hb-blob.cc b/src/hb-blob.cc
index 0d90b32..6e9f40f 100644
--- a/src/hb-blob.cc
+++ b/src/hb-blob.cc
@@ -46,7 +46,7 @@ HB_BEGIN_DECLS
 #endif
 
 hb_blob_t _hb_blob_nil = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
 
   0, /* length */
 
diff --git a/src/hb-buffer-private.hh b/src/hb-buffer-private.hh
index 44cda37..6954f96 100644
--- a/src/hb-buffer-private.hh
+++ b/src/hb-buffer-private.hh
@@ -30,6 +30,7 @@
 
 #include "hb-private.hh"
 #include "hb-buffer.h"
+#include "hb-object-private.hh"
 #include "hb-unicode-private.hh"
 
 HB_BEGIN_DECLS
@@ -85,7 +86,7 @@ _hb_buffer_set_masks (hb_buffer_t *buffer,
 
 
 struct _hb_buffer_t {
-  hb_reference_count_t ref_count;
+  hb_object_header_t header;
 
   /* Information about how the text in the buffer should be treated */
 
@@ -94,9 +95,9 @@ struct _hb_buffer_t {
 
   /* Buffer contents */
 
-  hb_bool_t have_output; /* Whether we have an output buffer going on */
-  hb_bool_t have_positions; /* Whether we have positions */
-  hb_bool_t in_error; /* Allocation failed */
+  bool have_output; /* Whether we have an output buffer going on */
+  bool have_positions; /* Whether we have positions */
+  bool in_error; /* Allocation failed */
 
   unsigned int i; /* Cursor into ->info and ->pos arrays */
   unsigned int len; /* Length of ->info and ->pos arrays */
diff --git a/src/hb-buffer.cc b/src/hb-buffer.cc
index 779a7b9..cf46671 100644
--- a/src/hb-buffer.cc
+++ b/src/hb-buffer.cc
@@ -35,7 +35,7 @@ HB_BEGIN_DECLS
 
 
 static hb_buffer_t _hb_buffer_nil = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
 
   &_hb_unicode_funcs_nil,  /* unicode */
   {
diff --git a/src/hb-font-private.hh b/src/hb-font-private.hh
index 7609300..b028d5f 100644
--- a/src/hb-font-private.hh
+++ b/src/hb-font-private.hh
@@ -32,6 +32,7 @@
 #include "hb-private.hh"
 
 #include "hb-font.h"
+#include "hb-object-private.hh"
 
 HB_BEGIN_DECLS
 
@@ -41,7 +42,7 @@ HB_BEGIN_DECLS
  */
 
 struct _hb_font_funcs_t {
-  hb_reference_count_t ref_count;
+  hb_object_header_t header;
 
   hb_bool_t immutable;
 
@@ -62,7 +63,7 @@ extern HB_INTERNAL hb_font_funcs_t _hb_font_funcs_nil;
  */
 
 struct _hb_face_t {
-  hb_reference_count_t ref_count;
+  hb_object_header_t header;
 
   hb_get_table_func_t  get_table;
   void                *user_data;
@@ -80,7 +81,7 @@ struct _hb_face_t {
  */
 
 struct _hb_font_t {
-  hb_reference_count_t ref_count;
+  hb_object_header_t header;
 
   unsigned int x_scale;
   unsigned int y_scale;
diff --git a/src/hb-font.cc b/src/hb-font.cc
index 5a8e862..149ca19 100644
--- a/src/hb-font.cc
+++ b/src/hb-font.cc
@@ -85,7 +85,8 @@ hb_font_get_kerning_nil (hb_font_t *font HB_UNUSED,
 { return 0; }
 
 hb_font_funcs_t _hb_font_funcs_nil = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
+
   TRUE,  /* immutable */
   {
     hb_font_get_glyph_nil,
@@ -287,7 +288,7 @@ hb_font_get_kerning (hb_font_t *font, hb_face_t *face,
  */
 
 static hb_face_t _hb_face_nil = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
 
   NULL, /* get_table */
   NULL, /* user_data */
@@ -435,7 +436,7 @@ hb_face_get_upem (hb_face_t *face)
  */
 
 static hb_font_t _hb_font_nil = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
 
   0, /* x_scale */
   0, /* y_scale */
diff --git a/src/hb-ft.cc b/src/hb-ft.cc
index 479c82f..4afcd6c 100644
--- a/src/hb-ft.cc
+++ b/src/hb-ft.cc
@@ -145,7 +145,8 @@ hb_ft_get_kerning (hb_font_t *font HB_UNUSED,
 }
 
 static hb_font_funcs_t ft_ffuncs = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
+
   TRUE, /* immutable */
   {
     hb_ft_get_glyph,
diff --git a/src/hb-glib.cc b/src/hb-glib.cc
index 5a469e8..32cefa2 100644
--- a/src/hb-glib.cc
+++ b/src/hb-glib.cc
@@ -221,7 +221,8 @@ hb_glib_get_script (hb_unicode_funcs_t *ufuncs,
 }
 
 static hb_unicode_funcs_t glib_ufuncs = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
+
   NULL, /* parent */
   TRUE, /* immutable */
   {
diff --git a/src/hb-icu.cc b/src/hb-icu.cc
index 87f2860..2abd140 100644
--- a/src/hb-icu.cc
+++ b/src/hb-icu.cc
@@ -161,7 +161,8 @@ hb_icu_get_script (hb_unicode_funcs_t *ufuncs,
 }
 
 static hb_unicode_funcs_t icu_ufuncs = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
+
   NULL, /* parent */
   TRUE, /* immutable */
   {
diff --git a/src/hb-object-private.hh b/src/hb-object-private.hh
index f45e32d..7bad2c7 100644
--- a/src/hb-object-private.hh
+++ b/src/hb-object-private.hh
@@ -37,75 +37,84 @@
 HB_BEGIN_DECLS
 
 
-
 /* Debug */
 
 #ifndef HB_DEBUG_OBJECT
 #define HB_DEBUG_OBJECT (HB_DEBUG+0)
 #endif
 
-static inline void
-_hb_trace_object (const void *obj,
-		  hb_reference_count_t *ref_count,
-		  const char *function)
-{
-  (void) (HB_DEBUG_OBJECT &&
-	  fprintf (stderr, "OBJECT(%p) refcount=%d %s\n",
-		   obj,
-		   ref_count->get (),
-		   function));
-}
 
-#define TRACE_OBJECT(obj) _hb_trace_object (obj, &obj->ref_count, __FUNCTION__)
+typedef struct _hb_object_header_t hb_object_header_t;
 
+struct _hb_object_header_t {
+  hb_reference_count_t ref_count;
 
+#define HB_OBJECT_HEADER_STATIC {HB_REFERENCE_COUNT_INVALID}
 
-/* Object allocation and lifecycle manamgement macros */
+  static inline void *create (unsigned int size) {
+    hb_object_header_t *obj = (hb_object_header_t *) calloc (1, size);
 
-#define HB_OBJECT_IS_INERT(obj) \
-    (unlikely ((obj)->ref_count.is_invalid ()))
+    if (likely (obj))
+      obj->init ();
 
-#define HB_OBJECT_DO_INIT_EXPR(obj) \
-    obj->ref_count.init (1)
+    return obj;
+  }
 
-#define HB_OBJECT_DO_INIT(obj) \
-  HB_STMT_START { \
-    HB_OBJECT_DO_INIT_EXPR (obj); \
-  } HB_STMT_END
+  inline void init (void) {
+    ref_count.init (1);
+  }
+
+  inline bool is_inert (void) const { return unlikely (ref_count.is_invalid ()); }
+
+  inline void reference (void) {
+    if (unlikely (!this || this->is_inert ()))
+      return;
+    ref_count.inc ();
+  }
+
+  inline bool destroy (void) {
+    if (unlikely (!this || this->is_inert ()))
+      return false;
+    return ref_count.dec () == 1;
+  }
+
+  inline void trace (const char *function) const {
+    (void) (HB_DEBUG_OBJECT &&
+	    fprintf (stderr, "OBJECT(%p) refcount=%d %s\n",
+		     this,
+		     this ? ref_count.get () : 0,
+		     function));
+  }
+
+};
+
+
+/* Object allocation and lifecycle manamgement macros */
+
+#define TRACE_OBJECT(obj) \
+	obj->header.trace (__FUNCTION__)
+
+#define HB_OBJECT_IS_INERT(obj) \
+    (unlikely ((obj)->header.is_inert ()))
 
 #define HB_OBJECT_DO_CREATE(Type, obj) \
   likely (( \
-	       (void) ( \
-		 ((obj) = (Type *) calloc (1, sizeof (Type))) && \
-		 ( \
-		  HB_OBJECT_DO_INIT_EXPR (obj), \
-		  TRACE_OBJECT (obj), \
-		  TRUE \
-		 ) \
-	       ), \
-	       (obj) \
-	     ))
+	  ((obj) = (Type *) hb_object_header_t::create (sizeof (Type))), \
+	  TRACE_OBJECT (obj), \
+	  (obj) \
+	  ))
 
 #define HB_OBJECT_DO_REFERENCE(obj) \
   HB_STMT_START { \
-    int old_count; \
-    if (unlikely (!(obj) || HB_OBJECT_IS_INERT (obj))) \
-      return obj; \
     TRACE_OBJECT (obj); \
-    old_count = obj->ref_count.inc (); \
-    assert (old_count > 0); \
+    obj->header.reference (); \
     return obj; \
   } HB_STMT_END
 
 #define HB_OBJECT_DO_DESTROY(obj) \
   HB_STMT_START { \
-    int old_count; \
-    if (unlikely (!(obj) || HB_OBJECT_IS_INERT (obj))) \
-      return; \
     TRACE_OBJECT (obj); \
-    old_count = obj->ref_count.dec (); \
-    assert (old_count > 0); \
-    if (old_count != 1) \
+    if (!obj->header.destroy ()) \
       return; \
   } HB_STMT_END
 
diff --git a/src/hb-private.hh b/src/hb-private.hh
index 929b287..1022213 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -305,7 +305,7 @@ typedef struct {
 #define HB_DEBUG 0
 #endif
 
-static inline hb_bool_t /* always returns TRUE */
+static inline bool /* always returns TRUE */
 _hb_trace (const char *what,
 	   const char *function,
 	   const void *obj,
@@ -317,9 +317,6 @@ _hb_trace (const char *what,
 }
 
 
-#include "hb-object-private.hh"
-
-
 HB_END_DECLS
 
 #endif /* HB_PRIVATE_HH */
diff --git a/src/hb-unicode-private.hh b/src/hb-unicode-private.hh
index a230e1a..16836a0 100644
--- a/src/hb-unicode-private.hh
+++ b/src/hb-unicode-private.hh
@@ -34,6 +34,7 @@
 #include "hb-private.hh"
 
 #include "hb-unicode.h"
+#include "hb-object-private.hh"
 
 HB_BEGIN_DECLS
 
@@ -43,10 +44,11 @@ HB_BEGIN_DECLS
  */
 
 struct _hb_unicode_funcs_t {
-  hb_reference_count_t ref_count;
+  hb_object_header_t header;
+
   hb_unicode_funcs_t *parent;
 
-  hb_bool_t immutable;
+  bool immutable;
 
 #define IMPLEMENT(return_type, name) \
   inline return_type \
diff --git a/src/hb-unicode.cc b/src/hb-unicode.cc
index 14285ec..ed0dc10 100644
--- a/src/hb-unicode.cc
+++ b/src/hb-unicode.cc
@@ -81,7 +81,8 @@ hb_unicode_get_script_nil (hb_unicode_funcs_t *ufuncs    HB_UNUSED,
 
 
 hb_unicode_funcs_t _hb_unicode_funcs_nil = {
-  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+  HB_OBJECT_HEADER_STATIC,
+
   NULL, /* parent */
   TRUE, /* immutable */
   {
commit a9f24c802956d57180d71b83e96a0fb81197df4a
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Thu Apr 21 17:18:22 2011 -0400

    Move hb_reference_count_t to hb-private.h

diff --git a/src/hb-object-private.hh b/src/hb-object-private.hh
index 3654b07..f45e32d 100644
--- a/src/hb-object-private.hh
+++ b/src/hb-object-private.hh
@@ -37,23 +37,6 @@
 HB_BEGIN_DECLS
 
 
-typedef struct {
-  hb_atomic_int_t ref_count;
-
-#define HB_REFERENCE_COUNT_INVALID_VALUE ((hb_atomic_int_t) -1)
-#define HB_REFERENCE_COUNT_INVALID {HB_REFERENCE_COUNT_INVALID_VALUE}
-
-  inline void init (int v) { ref_count = v; /* non-atomic is fine */ }
-  inline int inc (void) { return hb_atomic_int_fetch_and_add (ref_count,  1); }
-  inline int dec (void) { return hb_atomic_int_fetch_and_add (ref_count, -1); }
-  inline void set (int v) { return hb_atomic_int_set (ref_count, v); }
-
-  inline int get (void) const { return hb_atomic_int_get (ref_count); }
-  inline bool is_invalid (void) const { return get () == HB_REFERENCE_COUNT_INVALID_VALUE; }
-
-} hb_reference_count_t;
-
-
 
 /* Debug */
 
diff --git a/src/hb-private.hh b/src/hb-private.hh
index e3fd6cf..929b287 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -254,6 +254,25 @@ typedef volatile int hb_mutex_t;
 #endif
 
 
+/* A reference count */
+
+typedef struct {
+  hb_atomic_int_t ref_count;
+
+#define HB_REFERENCE_COUNT_INVALID_VALUE ((hb_atomic_int_t) -1)
+#define HB_REFERENCE_COUNT_INVALID {HB_REFERENCE_COUNT_INVALID_VALUE}
+
+  inline void init (int v) { ref_count = v; /* non-atomic is fine */ }
+  inline int inc (void) { return hb_atomic_int_fetch_and_add (ref_count,  1); }
+  inline int dec (void) { return hb_atomic_int_fetch_and_add (ref_count, -1); }
+  inline void set (int v) { return hb_atomic_int_set (ref_count, v); }
+
+  inline int get (void) const { return hb_atomic_int_get (ref_count); }
+  inline bool is_invalid (void) const { return get () == HB_REFERENCE_COUNT_INVALID_VALUE; }
+
+} hb_reference_count_t;
+
+
 /* Big-endian handling */
 
 #define hb_be_uint16(v)		((uint16_t) ((((const uint8_t *)&(v))[0] << 8) + (((const uint8_t *)&(v))[1])))
@@ -270,6 +289,7 @@ typedef volatile int hb_mutex_t;
 /* ASCII tag/character handling */
 
 #define ISALPHA(c) (((c) >= 'a' && (c) <= 'z') || ((c) >= 'A' && (c) <= 'Z'))
+#define ISALNUM(c) (((c) >= 'a' && (c) <= 'z') || ((c) >= 'A' && (c) <= 'Z') || ((c) >= '0' && (c) <= '9'))
 #define TOUPPER(c) (((c) >= 'a' && (c) <= 'z') ? (c) - 'a' + 'A' : (c))
 #define TOLOWER(c) (((c) >= 'A' && (c) <= 'Z') ? (c) - 'A' + 'a' : (c))
 
commit 2409d5f8d7dd8b535ce5ea29e933f7db27d33793
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Thu Apr 21 17:14:28 2011 -0400

    Update Copyright headers

diff --git a/COPYING b/COPYING
index 3fb9e51..7362ead 100644
--- a/COPYING
+++ b/COPYING
@@ -1,12 +1,13 @@
 HarfBuzz is licensed under the so-called "Old MIT" license.  Details follow.
 
-Copyright (C) 2010  Google, Inc.
-Copyright (C) 2006  Behdad Esfahbod
-Copyright (C) 2009  Keith Stribley
-Copyright (C) 2009  Martin Hosken and SIL International
-Copyright (C) 2007  Chris Wilson
-Copyright (C) 2004,2007,2008,2009,2010  Red Hat, Inc.
-Copyright (C) 1998-2004  David Turner and Werner Lemberg
+Copyright © 2011 Codethink Limited
+Copyright © 2010,2011  Google, Inc.
+Copyright © 2006  Behdad Esfahbod
+Copyright © 2009  Keith Stribley
+Copyright © 2009  Martin Hosken and SIL International
+Copyright © 2007  Chris Wilson
+Copyright © 2004,2007,2008,2009,2010  Red Hat, Inc.
+Copyright © 1998-2004  David Turner and Werner Lemberg
 For full copyright notices consult the individual files in the package.
 
 
diff --git a/src/hb-blob-private.hh b/src/hb-blob-private.hh
index 4b421da..98ee9ec 100644
--- a/src/hb-blob-private.hh
+++ b/src/hb-blob-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Red Hat, Inc.
+ * Copyright © 2010  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-blob.cc b/src/hb-blob.cc
index e2af8b7..0d90b32 100644
--- a/src/hb-blob.cc
+++ b/src/hb-blob.cc
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-blob.h b/src/hb-blob.h
index 4097ccc..76ea80d 100644
--- a/src/hb-blob.h
+++ b/src/hb-blob.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-buffer-private.hh b/src/hb-buffer-private.hh
index 4c2a3e6..44cda37 100644
--- a/src/hb-buffer-private.hh
+++ b/src/hb-buffer-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 1998-2004  David Turner and Werner Lemberg
- * Copyright (C) 2004,2007,2009,2010  Red Hat, Inc.
+ * Copyright © 1998-2004  David Turner and Werner Lemberg
+ * Copyright © 2004,2007,2009,2010  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-buffer.cc b/src/hb-buffer.cc
index 5d3b532..779a7b9 100644
--- a/src/hb-buffer.cc
+++ b/src/hb-buffer.cc
@@ -1,7 +1,7 @@
 /*
- * Copyright (C) 1998-2004  David Turner and Werner Lemberg
- * Copyright (C) 2004,2007,2009,2010  Red Hat, Inc.
- * Copyright (C) 2011  Google, Inc.
+ * Copyright © 1998-2004  David Turner and Werner Lemberg
+ * Copyright © 2004,2007,2009,2010  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-buffer.h b/src/hb-buffer.h
index b80ce9f..e7ef087 100644
--- a/src/hb-buffer.h
+++ b/src/hb-buffer.h
@@ -1,7 +1,7 @@
 /*
- * Copyright (C) 1998-2004  David Turner and Werner Lemberg
- * Copyright (C) 2004,2007,2009  Red Hat, Inc.
- * Copyright (C) 2011  Google, Inc.
+ * Copyright © 1998-2004  David Turner and Werner Lemberg
+ * Copyright © 2004,2007,2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-common.cc b/src/hb-common.cc
index ece0980..5872678 100644
--- a/src/hb-common.cc
+++ b/src/hb-common.cc
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2009,2010  Red Hat, Inc.
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #include "hb-private.hh"
diff --git a/src/hb-common.h b/src/hb-common.h
index c6481bb..c496dcf 100644
--- a/src/hb-common.h
+++ b/src/hb-common.h
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_COMMON_H
diff --git a/src/hb-font-private.hh b/src/hb-font-private.hh
index da7255a..7609300 100644
--- a/src/hb-font-private.hh
+++ b/src/hb-font-private.hh
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_FONT_PRIVATE_HH
diff --git a/src/hb-font.cc b/src/hb-font.cc
index 733eb3b..5a8e862 100644
--- a/src/hb-font.cc
+++ b/src/hb-font.cc
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-font.h b/src/hb-font.h
index d9d6090..e349591 100644
--- a/src/hb-font.h
+++ b/src/hb-font.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ft.cc b/src/hb-ft.cc
index f792ba0..479c82f 100644
--- a/src/hb-ft.cc
+++ b/src/hb-ft.cc
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
- * Copyright (C) 2009  Keith Stribley
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2009  Keith Stribley
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ft.h b/src/hb-ft.h
index 5671a00..54cce2a 100644
--- a/src/hb-ft.h
+++ b/src/hb-ft.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-glib.cc b/src/hb-glib.cc
index 0f94f52..5a469e8 100644
--- a/src/hb-glib.cc
+++ b/src/hb-glib.cc
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #include "hb-private.hh"
diff --git a/src/hb-glib.h b/src/hb-glib.h
index abec2d2..3bc3ebf 100644
--- a/src/hb-glib.h
+++ b/src/hb-glib.h
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_GLIB_H
diff --git a/src/hb-icu.cc b/src/hb-icu.cc
index 5ff3d0f..87f2860 100644
--- a/src/hb-icu.cc
+++ b/src/hb-icu.cc
@@ -1,6 +1,7 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
- * Copyright (C) 2009  Keith Stribley
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2009  Keith Stribley
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -23,6 +24,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #include "hb-private.hh"
diff --git a/src/hb-icu.h b/src/hb-icu.h
index 2e7f146..ecabec2 100644
--- a/src/hb-icu.h
+++ b/src/hb-icu.h
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_ICU_H
diff --git a/src/hb-object-private.hh b/src/hb-object-private.hh
index 0a055e9..3654b07 100644
--- a/src/hb-object-private.hh
+++ b/src/hb-object-private.hh
@@ -1,6 +1,7 @@
 /*
- * Copyright (C) 2007  Chris Wilson
- * Copyright (C) 2009,2010  Red Hat, Inc.
+ * Copyright © 2007  Chris Wilson
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -25,6 +26,7 @@
  * Contributor(s):
  *	Chris Wilson <chris at chris-wilson.co.uk>
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_OBJECT_PRIVATE_HH
diff --git a/src/hb-open-file-private.hh b/src/hb-open-file-private.hh
index cfb60db..b65e83f 100644
--- a/src/hb-open-file-private.hh
+++ b/src/hb-open-file-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-open-type-private.hh b/src/hb-open-type-private.hh
index 490ea3a..0f1021b 100644
--- a/src/hb-open-type-private.hh
+++ b/src/hb-open-type-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007,2008,2009,2010  Red Hat, Inc.
+ * Copyright © 2007,2008,2009,2010  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-head-private.hh b/src/hb-ot-head-private.hh
index 3a4bbbf..45015ca 100644
--- a/src/hb-ot-head-private.hh
+++ b/src/hb-ot-head-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Red Hat, Inc.
+ * Copyright © 2010  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout-common-private.hh b/src/hb-ot-layout-common-private.hh
index 00a1432..7ef214e 100644
--- a/src/hb-ot-layout-common-private.hh
+++ b/src/hb-ot-layout-common-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout-gdef-private.hh b/src/hb-ot-layout-gdef-private.hh
index 242b33a..4d4ad93 100644
--- a/src/hb-ot-layout-gdef-private.hh
+++ b/src/hb-ot-layout-gdef-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout-gpos-private.hh b/src/hb-ot-layout-gpos-private.hh
index 36acf89..9d1f3be 100644
--- a/src/hb-ot-layout-gpos-private.hh
+++ b/src/hb-ot-layout-gpos-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009,2010  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2007,2008,2009,2010  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout-gsub-private.hh b/src/hb-ot-layout-gsub-private.hh
index ae1c5f3..4bf4441 100644
--- a/src/hb-ot-layout-gsub-private.hh
+++ b/src/hb-ot-layout-gsub-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009,2010  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2007,2008,2009,2010  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout-gsubgpos-private.hh b/src/hb-ot-layout-gsubgpos-private.hh
index f2aca6b..8d6122b 100644
--- a/src/hb-ot-layout-gsubgpos-private.hh
+++ b/src/hb-ot-layout-gsubgpos-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009,2010  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2007,2008,2009,2010  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout-private.hh b/src/hb-ot-layout-private.hh
index b032a7a..7b72515 100644
--- a/src/hb-ot-layout-private.hh
+++ b/src/hb-ot-layout-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc
index 7990fe9..e79f945 100644
--- a/src/hb-ot-layout.cc
+++ b/src/hb-ot-layout.cc
@@ -1,7 +1,7 @@
 /*
- * Copyright (C) 1998-2004  David Turner and Werner Lemberg
- * Copyright (C) 2006  Behdad Esfahbod
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 1998-2004  David Turner and Werner Lemberg
+ * Copyright © 2006  Behdad Esfahbod
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-layout.h b/src/hb-ot-layout.h
index 0e0d77f..9e58510 100644
--- a/src/hb-ot-layout.h
+++ b/src/hb-ot-layout.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-map-private.hh b/src/hb-ot-map-private.hh
index 0a1d9f6..6296187 100644
--- a/src/hb-ot-map-private.hh
+++ b/src/hb-ot-map-private.hh
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2009,2010  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-map.cc b/src/hb-ot-map.cc
index 7793600..9b15305 100644
--- a/src/hb-ot-map.cc
+++ b/src/hb-ot-map.cc
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2009,2010  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-shape-complex-arabic-table.hh b/src/hb-ot-shape-complex-arabic-table.hh
index 27c6696..3c9c93f 100644
--- a/src/hb-ot-shape-complex-arabic-table.hh
+++ b/src/hb-ot-shape-complex-arabic-table.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-shape-complex-arabic.cc b/src/hb-ot-shape-complex-arabic.cc
index 3e26568..f2d325f 100644
--- a/src/hb-ot-shape-complex-arabic.cc
+++ b/src/hb-ot-shape-complex-arabic.cc
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-shape-complex-private.hh b/src/hb-ot-shape-complex-private.hh
index 8225b46..b3afe2b 100644
--- a/src/hb-ot-shape-complex-private.hh
+++ b/src/hb-ot-shape-complex-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-shape-private.hh b/src/hb-ot-shape-private.hh
index f334cda..c0faf8c 100644
--- a/src/hb-ot-shape-private.hh
+++ b/src/hb-ot-shape-private.hh
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc
index 589dee3..d6bfd65 100644
--- a/src/hb-ot-shape.cc
+++ b/src/hb-ot-shape.cc
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2009,2010  Red Hat, Inc.
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2009,2010  Red Hat, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-shape.h b/src/hb-ot-shape.h
index 45d8104..d6a3dc7 100644
--- a/src/hb-ot-shape.h
+++ b/src/hb-ot-shape.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Red Hat, Inc.
+ * Copyright © 2010  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot-tag.cc b/src/hb-ot-tag.cc
index 7db1885..144ee82 100644
--- a/src/hb-ot-tag.cc
+++ b/src/hb-ot-tag.cc
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #include "hb-private.hh"
diff --git a/src/hb-ot-tag.h b/src/hb-ot-tag.h
index 345c80e..427a069 100644
--- a/src/hb-ot-tag.h
+++ b/src/hb-ot-tag.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-ot.h b/src/hb-ot.h
index 268711d..fd6dd58 100644
--- a/src/hb-ot.h
+++ b/src/hb-ot.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-private.hh b/src/hb-private.hh
index 85561d2..e3fd6cf 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -22,6 +23,7 @@
  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * Red Hat Author(s): Behdad Esfahbod
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_PRIVATE_HH
diff --git a/src/hb-shape.cc b/src/hb-shape.cc
index 66d951b..94b9118 100644
--- a/src/hb-shape.cc
+++ b/src/hb-shape.cc
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-shape.h b/src/hb-shape.h
index 6bc3257..2c6755a 100644
--- a/src/hb-shape.h
+++ b/src/hb-shape.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-unicode-private.hh b/src/hb-unicode-private.hh
index af15c04..a230e1a 100644
--- a/src/hb-unicode-private.hh
+++ b/src/hb-unicode-private.hh
@@ -1,7 +1,7 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  * Copyright © 2011 Codethink Limited
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010,2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-unicode.cc b/src/hb-unicode.cc
index 282a9b6..14285ec 100644
--- a/src/hb-unicode.cc
+++ b/src/hb-unicode.cc
@@ -1,7 +1,7 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  * Copyright © 2011 Codethink Limited
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010,2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb-unicode.h b/src/hb-unicode.h
index 0fcef06..47a78d4 100644
--- a/src/hb-unicode.h
+++ b/src/hb-unicode.h
@@ -1,6 +1,7 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  * Copyright © 2011 Codethink Limited
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
@@ -24,6 +25,7 @@
  *
  * Red Hat Author(s): Behdad Esfahbod
  * Codethink Author(s): Ryan Lortie
+ * Google Author(s): Behdad Esfahbod
  */
 
 #ifndef HB_UNICODE_H
diff --git a/src/hb-view.c b/src/hb-view.c
index 41adf20..ed2d515 100644
--- a/src/hb-view.c
+++ b/src/hb-view.c
@@ -1,6 +1,6 @@
 /*
- * Copyright (C) 2010  Behdad Esfahbod
- * Copyright (C) 2011  Google, Inc.
+ * Copyright © 2010  Behdad Esfahbod
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/hb.h b/src/hb.h
index e705d65..b75998e 100644
--- a/src/hb.h
+++ b/src/hb.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009  Red Hat, Inc.
+ * Copyright © 2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/main.cc b/src/main.cc
index 8126dae..4bf809e 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007,2008,2009  Red Hat, Inc.
+ * Copyright © 2007,2008,2009  Red Hat, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/src/test.c b/src/test.c
index 836dd4c..412f1fd 100644
--- a/src/test.c
+++ b/src/test.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2010  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/test/hb-test.h b/test/hb-test.h
index 42f0d44..2c04642 100644
--- a/test/hb-test.h
+++ b/test/hb-test.h
@@ -1,4 +1,19 @@
-/* * Copyright (C) 2010  Google, Inc.  * *  This is part of HarfBuzz, a text shaping library.  * * Permission is hereby granted, without written agreement and without * license or royalty fees, to use, copy, modify, and distribute this * software and its documentation for any purpose, provided that the * above copyright notice and the following two paragraphs appear in * all copies of this software.  * * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE.
+/*
+ * Copyright © 2011  Google, Inc.
+ *
+ *  This is part of HarfBuzz, a text shaping library.
+ *
+ * Permission is hereby granted, without written agreement and without
+ * license or royalty fees, to use, copy, modify, and distribute this
+ * software and its documentation for any purpose, provided that the
+ * above copyright notice and the following two paragraphs appear in
+ * all copies of this software.
+ *
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
+ * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ * DAMAGE.
  *
  * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
  * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
diff --git a/test/test-buffer.c b/test/test-buffer.c
index 464ec89..ab7f204 100644
--- a/test/test-buffer.c
+++ b/test/test-buffer.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/test/test-c.c b/test/test-c.c
index 37f02ff..a48f030 100644
--- a/test/test-c.c
+++ b/test/test-c.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/test/test-common.c b/test/test-common.c
index daf2754..96607d2 100644
--- a/test/test-common.c
+++ b/test/test-common.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/test/test-cplusplus.cc b/test/test-cplusplus.cc
index 3488b78..55a4d18 100644
--- a/test/test-cplusplus.cc
+++ b/test/test-cplusplus.cc
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010  Google, Inc.
+ * Copyright © 2011  Google, Inc.
  *
  *  This is part of HarfBuzz, a text shaping library.
  *
diff --git a/test/test-unicode.c b/test/test-unicode.c
index b7a5702..324fa1f 100644
--- a/test/test-unicode.c
+++ b/test/test-unicode.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2011 Codethink Limited
+ * Copyright © 2011 Codethink Limited
  *
  *  This is part of HarfBuzz, a text shaping library.
  *



More information about the HarfBuzz mailing list