commit harfbuzz for openSUSE:Factory
Hello community,
here is the log from the commit of package harfbuzz for openSUSE:Factory checked in at 2013-05-28 11:45:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/harfbuzz (Old)
and /work/SRC/openSUSE:Factory/.harfbuzz.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "harfbuzz"
Changes:
--------
--- /work/SRC/openSUSE:Factory/harfbuzz/harfbuzz.changes 2013-04-22 14:05:51.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.harfbuzz.new/harfbuzz.changes 2013-05-28 11:45:10.000000000 +0200
@@ -1,0 +2,8 @@
+Wed May 22 12:19:17 UTC 2013 - dimstar@opensuse.org
+
+- Update to version 0.9.17:
+ + Build fixes.
+ + Fix bug in hb_set_get_min().
+ + Fix regression with Arabic mark positioning / width-zeroing.
+
+-------------------------------------------------------------------
Old:
----
harfbuzz-0.9.16.tar.bz2
New:
----
harfbuzz-0.9.17.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ harfbuzz.spec ++++++
--- /var/tmp/diff_new_pack.vzRsij/_old 2013-05-28 11:45:11.000000000 +0200
+++ /var/tmp/diff_new_pack.vzRsij/_new 2013-05-28 11:45:11.000000000 +0200
@@ -17,7 +17,7 @@
Name: harfbuzz
-Version: 0.9.16
+Version: 0.9.17
Release: 0
# FIXME: graphite2 is not packaged / http://projects.palaso.org/projects/graphitedev
Summary: An OpenType text shaping engine
++++++ harfbuzz-0.9.16.tar.bz2 -> harfbuzz-0.9.17.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/NEWS new/harfbuzz-0.9.17/NEWS
--- old/harfbuzz-0.9.16/NEWS 2013-04-19 22:27:04.000000000 +0200
+++ new/harfbuzz-0.9.17/NEWS 2013-05-20 15:23:34.000000000 +0200
@@ -1,3 +1,11 @@
+Overview of changes leading to 0.9.17
+Monday, May 20, 2013
+=====================================
+
+- Build fixes.
+- Fix bug in hb_set_get_min().
+- Fix regression with Arabic mark positioning / width-zeroing.
+
Overview of changes leading to 0.9.16
Friday, April 19, 2013
=====================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/configure new/harfbuzz-0.9.17/configure
--- old/harfbuzz-0.9.16/configure 2013-04-19 22:24:01.000000000 +0200
+++ new/harfbuzz-0.9.17/configure 2013-05-20 15:23:53.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for HarfBuzz 0.9.16.
+# Generated by GNU Autoconf 2.68 for HarfBuzz 0.9.17.
#
# Report bugs to http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz.
#
@@ -571,8 +571,8 @@
# Identity of this package.
PACKAGE_NAME='HarfBuzz'
PACKAGE_TARNAME='harfbuzz'
-PACKAGE_VERSION='0.9.16'
-PACKAGE_STRING='HarfBuzz 0.9.16'
+PACKAGE_VERSION='0.9.17'
+PACKAGE_STRING='HarfBuzz 0.9.17'
PACKAGE_BUGREPORT='http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz'
PACKAGE_URL='http://harfbuzz.org/'
@@ -1385,7 +1385,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures HarfBuzz 0.9.16 to adapt to many kinds of systems.
+\`configure' configures HarfBuzz 0.9.17 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1455,7 +1455,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of HarfBuzz 0.9.16:";;
+ short | recursive ) echo "Configuration of HarfBuzz 0.9.17:";;
esac
cat <<\_ACEOF
@@ -1589,7 +1589,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-HarfBuzz configure 0.9.16
+HarfBuzz configure 0.9.17
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2133,7 +2133,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by HarfBuzz $as_me 0.9.16, which was
+It was created by HarfBuzz $as_me 0.9.17, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2954,7 +2954,7 @@
# Define the identity of the package.
PACKAGE='harfbuzz'
- VERSION='0.9.16'
+ VERSION='0.9.17'
# Some tools Automake needs.
@@ -16284,8 +16284,8 @@
HB_VERSION_MAJOR=0
HB_VERSION_MINOR=9
-HB_VERSION_MICRO=16
-HB_VERSION=0.9.16
+HB_VERSION_MICRO=17
+HB_VERSION=0.9.17
@@ -16296,7 +16296,7 @@
-HB_LIBTOOL_VERSION_INFO=916:0:916
+HB_LIBTOOL_VERSION_INFO=917:0:917
@@ -17361,7 +17361,7 @@
# necessarily want, like debugging and optimization flags
# See man (1) icu-config for more info.
ICU_CFLAGS=`$ICU_CONFIG --cppflags`
- ICU_LIBS=`$ICU_CONFIG --ldflags-libsonly`
+ ICU_LIBS=`$ICU_CONFIG --ldflags-searchpath --ldflags-libsonly`
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
@@ -17560,7 +17560,7 @@
# necessarily want, like debugging and optimization flags
# See man (1) icu-config for more info.
ICU_LE_CFLAGS=`$ICU_CONFIG --cppflags`
- ICU_LE_LIBS=`$ICU_CONFIG --ldflags-libsonly --ldflags-layout`
+ ICU_LE_LIBS=`$ICU_CONFIG --ldflags-searchpath --ldflags-libsonly --ldflags-layout`
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
@@ -18613,7 +18613,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by HarfBuzz $as_me 0.9.16, which was
+This file was extended by HarfBuzz $as_me 0.9.17, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -18680,7 +18680,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-HarfBuzz config.status 0.9.16
+HarfBuzz config.status 0.9.17
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/configure.ac new/harfbuzz-0.9.17/configure.ac
--- old/harfbuzz-0.9.16/configure.ac 2013-04-19 22:23:07.000000000 +0200
+++ new/harfbuzz-0.9.17/configure.ac 2013-05-20 15:21:57.000000000 +0200
@@ -1,6 +1,6 @@
AC_PREREQ([2.64])
AC_INIT([HarfBuzz],
- [0.9.16],
+ [0.9.17],
[http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz],
[harfbuzz],
[http://harfbuzz.org/])
@@ -13,7 +13,7 @@
AM_SILENT_RULES([yes])
# Initialize libtool
-AM_PROG_AR
+m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
LT_PREREQ([2.2])
LT_INIT([disable-static])
@@ -177,7 +177,7 @@
# necessarily want, like debugging and optimization flags
# See man (1) icu-config for more info.
ICU_CFLAGS=`$ICU_CONFIG --cppflags`
- ICU_LIBS=`$ICU_CONFIG --ldflags-libsonly`
+ ICU_LIBS=`$ICU_CONFIG --ldflags-searchpath --ldflags-libsonly`
AC_SUBST(ICU_CFLAGS)
AC_SUBST(ICU_LIBS)
AC_MSG_RESULT([yes])
@@ -205,7 +205,7 @@
# necessarily want, like debugging and optimization flags
# See man (1) icu-config for more info.
ICU_LE_CFLAGS=`$ICU_CONFIG --cppflags`
- ICU_LE_LIBS=`$ICU_CONFIG --ldflags-libsonly --ldflags-layout`
+ ICU_LE_LIBS=`$ICU_CONFIG --ldflags-searchpath --ldflags-libsonly --ldflags-layout`
AC_SUBST(ICU_LE_CFLAGS)
AC_SUBST(ICU_LE_LIBS)
AC_MSG_RESULT([yes])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/src/hb-buffer-private.hh new/harfbuzz-0.9.17/src/hb-buffer-private.hh
--- old/harfbuzz-0.9.16/src/hb-buffer-private.hh 2013-03-19 10:47:13.000000000 +0100
+++ new/harfbuzz-0.9.17/src/hb-buffer-private.hh 2013-05-02 21:46:20.000000000 +0200
@@ -80,6 +80,8 @@
inline hb_glyph_info_t &prev (void) { return out_info[out_len - 1]; }
inline hb_glyph_info_t prev (void) const { return info[out_len - 1]; }
+ inline bool has_separate_output (void) const { return info != out_info; }
+
unsigned int serial;
/* These reflect current allocations of the bytes in glyph_info_t's var1 and var2. */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/src/hb-buffer.cc new/harfbuzz-0.9.17/src/hb-buffer.cc
--- old/harfbuzz-0.9.16/src/hb-buffer.cc 2013-03-19 10:47:13.000000000 +0100
+++ new/harfbuzz-0.9.17/src/hb-buffer.cc 2013-04-30 17:35:05.000000000 +0200
@@ -549,7 +549,7 @@
{
assert (byte_i < 8 && byte_i + count <= 8);
- if (DEBUG (BUFFER))
+ if (DEBUG_ENABLED (BUFFER))
dump_var_allocation (this);
DEBUG_MSG (BUFFER, this,
"Allocating var bytes %d..%d for %s",
@@ -564,7 +564,7 @@
void hb_buffer_t::deallocate_var (unsigned int byte_i, unsigned int count, const char *owner)
{
- if (DEBUG (BUFFER))
+ if (DEBUG_ENABLED (BUFFER))
dump_var_allocation (this);
DEBUG_MSG (BUFFER, this,
@@ -581,7 +581,7 @@
void hb_buffer_t::assert_var (unsigned int byte_i, unsigned int count, const char *owner)
{
- if (DEBUG (BUFFER))
+ if (DEBUG_ENABLED (BUFFER))
dump_var_allocation (this);
DEBUG_MSG (BUFFER, this,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/src/hb-ot-layout-gpos-table.hh new/harfbuzz-0.9.17/src/hb-ot-layout-gpos-table.hh
--- old/harfbuzz-0.9.16/src/hb-ot-layout-gpos-table.hh 2013-04-18 05:14:23.000000000 +0200
+++ new/harfbuzz-0.9.17/src/hb-ot-layout-gpos-table.hh 2013-05-14 21:21:11.000000000 +0200
@@ -710,8 +710,6 @@
TRACE_COLLECT_GLYPHS (this);
/* (this+coverage).add_coverage (c->input); // Don't need this. */
- /* TODO only add values for pairs that have nonzero adjustments. */
-
unsigned int count1 = class1Count;
const ClassDef &klass1 = this+classDef1;
for (unsigned int i = 0; i < count1; i++)
@@ -1014,7 +1012,6 @@
TRACE_COLLECT_GLYPHS (this);
(this+markCoverage).add_coverage (c->input);
(this+baseCoverage).add_coverage (c->input);
- /* TODO only add combinations that have nonzero adjustment. */
}
inline const Coverage &get_coverage (void) const
@@ -1118,7 +1115,6 @@
TRACE_COLLECT_GLYPHS (this);
(this+markCoverage).add_coverage (c->input);
(this+ligatureCoverage).add_coverage (c->input);
- /* TODO only add combinations that have nonzero adjustment. */
}
inline const Coverage &get_coverage (void) const
@@ -1234,7 +1230,6 @@
TRACE_COLLECT_GLYPHS (this);
(this+mark1Coverage).add_coverage (c->input);
(this+mark2Coverage).add_coverage (c->input);
- /* TODO only add combinations that have nonzero adjustment. */
}
inline const Coverage &get_coverage (void) const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/src/hb-ot-layout-gsub-table.hh new/harfbuzz-0.9.17/src/hb-ot-layout-gsub-table.hh
--- old/harfbuzz-0.9.16/src/hb-ot-layout-gsub-table.hh 2013-04-18 05:36:37.000000000 +0200
+++ new/harfbuzz-0.9.17/src/hb-ot-layout-gsub-table.hh 2013-05-14 21:21:11.000000000 +0200
@@ -275,11 +275,18 @@
unsigned int klass = c->buffer->cur().glyph_props() &
HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE ? HB_OT_LAYOUT_GLYPH_PROPS_BASE_GLYPH : 0;
unsigned int count = substitute.len;
- for (unsigned int i = 0; i < count; i++) {
- set_lig_props_for_component (c->buffer->cur(), i);
- c->output_glyph (substitute.array[i], klass);
+ if (count == 1) /* Special-case to make it in-place. */
+ {
+ c->replace_glyph (substitute.array[0]);
+ }
+ else
+ {
+ for (unsigned int i = 0; i < count; i++) {
+ set_lig_props_for_component (c->buffer->cur(), i);
+ c->output_glyph (substitute.array[i], klass);
+ }
+ c->buffer->skip_glyph ();
}
- c->buffer->skip_glyph ();
return TRACE_RETURN (true);
}
@@ -1196,38 +1203,38 @@
if (likely (!is_reverse ()))
{
- /* in/out forward substitution */
- c->buffer->clear_output ();
- c->buffer->idx = 0;
-
- while (c->buffer->idx < c->buffer->len)
- {
- if (digest->may_have (c->buffer->cur().codepoint) &&
- (c->buffer->cur().mask & c->lookup_mask) &&
- apply_once (c))
- ret = true;
- else
- c->buffer->next_glyph ();
- }
- if (ret)
- c->buffer->swap_buffers ();
+ /* in/out forward substitution */
+ c->buffer->clear_output ();
+ c->buffer->idx = 0;
+
+ while (c->buffer->idx < c->buffer->len)
+ {
+ if (digest->may_have (c->buffer->cur().codepoint) &&
+ (c->buffer->cur().mask & c->lookup_mask) &&
+ apply_once (c))
+ ret = true;
+ else
+ c->buffer->next_glyph ();
+ }
+ if (ret)
+ c->buffer->swap_buffers ();
}
else
{
- /* in-place backward substitution */
- c->buffer->remove_output ();
- c->buffer->idx = c->buffer->len - 1;
- do
- {
- if (digest->may_have (c->buffer->cur().codepoint) &&
- (c->buffer->cur().mask & c->lookup_mask) &&
- apply_once (c))
- ret = true;
- else
- c->buffer->idx--;
+ /* in-place backward substitution */
+ c->buffer->remove_output ();
+ c->buffer->idx = c->buffer->len - 1;
+ do
+ {
+ if (digest->may_have (c->buffer->cur().codepoint) &&
+ (c->buffer->cur().mask & c->lookup_mask) &&
+ apply_once (c))
+ ret = true;
+ else
+ c->buffer->idx--;
- }
- while ((int) c->buffer->idx >= 0);
+ }
+ while ((int) c->buffer->idx >= 0);
}
return ret;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/harfbuzz-0.9.16/src/hb-ot-map-private.hh new/harfbuzz-0.9.17/src/hb-ot-map-private.hh
--- old/harfbuzz-0.9.16/src/hb-ot-map-private.hh 2013-03-19 12:04:53.000000000 +0100
+++ new/harfbuzz-0.9.17/src/hb-ot-map-private.hh 2013-05-14 21:21:11.000000000 +0200
@@ -1,6 +1,6 @@
/*
* Copyright © 2009,2010 Red Hat, Inc.
- * Copyright © 2010,2011,2012 Google, Inc.
+ * Copyright © 2010,2011,2012,2013 Google, Inc.
*
* This is part of HarfBuzz, a text shaping library.
*
@@ -31,8 +31,8 @@
#include "hb-buffer-private.hh"
-#include "hb-ot-layout-private.hh"
+struct hb_ot_shape_plan_t;
static const hb_tag_t table_tags[2] = {HB_OT_TAG_GSUB, HB_OT_TAG_GPOS};
@@ -67,9 +67,9 @@
typedef void (*pause_func_t) (const struct hb_ot_shape_plan_t *plan, hb_font_t *font, hb_buffer_t *buffer);
- struct pause_map_t {
- unsigned int num_lookups; /* Cumulative */
- pause_func_t callback;
+ struct stage_map_t {
+ unsigned int last_lookup; /* Cumulative */
+ pause_func_t pause_func;
};
@@ -110,23 +110,28 @@
*lookup_count = 0;
return;
}
- assert (stage <= pauses[table_index].len);
- unsigned int start = stage ? pauses[table_index][stage - 1].num_lookups : 0;
- unsigned int end = stage < pauses[table_index].len ? pauses[table_index][stage].num_lookups : lookups[table_index].len;
+ assert (stage <= stages[table_index].len);
+ unsigned int start = stage ? stages[table_index][stage - 1].last_lookup : 0;
+ unsigned int end = stage < stages[table_index].len ? stages[table_index][stage].last_lookup : lookups[table_index].len;
*plookups = &lookups[table_index][start];
*lookup_count = end - start;
}
HB_INTERNAL void collect_lookups (unsigned int table_index, hb_set_t *lookups) const;
+ HB_INTERNAL inline void apply (unsigned int table_index,
+ const struct hb_ot_shape_plan_t *plan,
+ hb_font_t *font,
+ hb_buffer_t *buffer) const;
HB_INTERNAL void substitute (const struct hb_ot_shape_plan_t *plan, hb_font_t *font, hb_buffer_t *buffer) const;
HB_INTERNAL void position (const struct hb_ot_shape_plan_t *plan, hb_font_t *font, hb_buffer_t *buffer) const;
inline void finish (void) {
features.finish ();
- lookups[0].finish ();
- lookups[1].finish ();
- pauses[0].finish ();
- pauses[1].finish ();
+ for (unsigned int table_index = 0; table_index < 2; table_index++)
+ {
+ lookups[table_index].finish ();
+ stages[table_index].finish ();
+ }
}
public:
@@ -145,7 +150,7 @@
hb_prealloced_array_t
participants (1)
-
root@hilbert.suse.de