platform/upstream/fontconfig.git
14 years agoBug 24729 - [ne_NP] Fix ortho file
Behdad Esfahbod [Tue, 21 Sep 2010 17:18:05 +0000 (13:18 -0400)]
Bug 24729 - [ne_NP] Fix ortho file

Exclude three characters (U+090C..090E) from Nepalese.

14 years ago[fc-lang] Support excluding characters
Behdad Esfahbod [Tue, 21 Sep 2010 17:14:55 +0000 (13:14 -0400)]
[fc-lang] Support excluding characters

By prefixing a line by a hyphen/minus sign.  Useful when including
other orth files.

14 years agoAdd new public API: FcCharSetDelChar()
Behdad Esfahbod [Tue, 21 Sep 2010 17:14:41 +0000 (13:14 -0400)]
Add new public API: FcCharSetDelChar()

14 years agoBug 29995 - fc-cat does not invoke FcFini()
Behdad Esfahbod [Fri, 3 Sep 2010 12:11:00 +0000 (08:11 -0400)]
Bug 29995 - fc-cat does not invoke FcFini()

14 years agoAdd comments
Behdad Esfahbod [Wed, 18 Aug 2010 15:31:31 +0000 (11:31 -0400)]
Add comments

14 years agoBug 29338 - fc-pattern.sgml, open para tag
Behdad Esfahbod [Thu, 5 Aug 2010 19:58:09 +0000 (15:58 -0400)]
Bug 29338 - fc-pattern.sgml, open para tag

14 years agoFix compiler warnings
Alan Coopersmith [Thu, 3 Jun 2010 02:38:19 +0000 (22:38 -0400)]
Fix compiler warnings

14 years agoAdd fc-pattern cmdline tool
Behdad Esfahbod [Wed, 21 Apr 2010 03:18:00 +0000 (23:18 -0400)]
Add fc-pattern cmdline tool

14 years agoFix comment
Behdad Esfahbod [Mon, 12 Apr 2010 16:49:53 +0000 (12:49 -0400)]
Fix comment

14 years agoRemove all training whitespaces
Behdad Esfahbod [Mon, 12 Apr 2010 16:18:50 +0000 (12:18 -0400)]
Remove all training whitespaces

14 years agoMore whitespace
Behdad Esfahbod [Mon, 12 Apr 2010 16:10:05 +0000 (12:10 -0400)]
More whitespace

14 years agoWhitespace
Behdad Esfahbod [Mon, 12 Apr 2010 15:52:09 +0000 (11:52 -0400)]
Whitespace

14 years agoAccept TT_PLATFORM_MICROSOFT, TT_MS_ID_SYMBOL_CS from name table
Behdad Esfahbod [Wed, 7 Apr 2010 16:47:37 +0000 (12:47 -0400)]
Accept TT_PLATFORM_MICROSOFT, TT_MS_ID_SYMBOL_CS from name table

The OT spec says:

"When building a Unicode font for Windows, the platform ID should be 3 and the
encoding ID should be 1. When building a symbol font for Windows, the platform
ID should be 3 and the encoding ID should be 0."

We were ignoring the SYMBOL_CS entry before.  It's UTF-16/UCS-2 like the
UNICODE_CS.

Also, always use UTF-16BE instead of UCS-2BE.  The conversion was doing
UTF-16BE anyway.

14 years agoDon't include unistd.h in fontconfig.h
Behdad Esfahbod [Wed, 3 Mar 2010 18:26:55 +0000 (13:26 -0500)]
Don't include unistd.h in fontconfig.h

Bug 26783 patch: unistd.h not exist on ms windows

14 years agoBug 25152 Don't sleep(2) if all caches were uptodate
Behdad Esfahbod [Fri, 26 Feb 2010 06:47:56 +0000 (01:47 -0500)]
Bug 25152 Don't sleep(2) if all caches were uptodate

14 years agoBug 26157 Solaris/Sun C 5.8: compilation of 2.8.0 and 2.7.3 fails
Behdad Esfahbod [Thu, 25 Feb 2010 22:11:14 +0000 (17:11 -0500)]
Bug 26157 Solaris/Sun C 5.8: compilation of 2.8.0 and 2.7.3 fails

14 years agoBug 18886 installation crashes if fontconfig already installed
Behdad Esfahbod [Thu, 25 Feb 2010 20:10:41 +0000 (15:10 -0500)]
Bug 18886 installation crashes if fontconfig already installed

Run the uninstalled fc-cache, not the installed one.

14 years agoMore doc typo fixes
Behdad Esfahbod [Mon, 15 Feb 2010 01:27:22 +0000 (20:27 -0500)]
More doc typo fixes

14 years agoFix doc typo
Behdad Esfahbod [Mon, 15 Feb 2010 01:20:00 +0000 (20:20 -0500)]
Fix doc typo

14 years agoAdd note about autogen.sh to INSTALL
Behdad Esfahbod [Tue, 26 Jan 2010 17:45:09 +0000 (12:45 -0500)]
Add note about autogen.sh to INSTALL

14 years agoUpdate INSTALL
Behdad Esfahbod [Tue, 26 Jan 2010 17:43:51 +0000 (12:43 -0500)]
Update INSTALL

14 years agoBug 25508 configure assumes bash > 2.0 is on system
Behdad Esfahbod [Wed, 9 Dec 2009 02:15:15 +0000 (21:15 -0500)]
Bug 25508 configure assumes bash > 2.0 is on system

Remove dolt.  With libtool2, there's not much need for dolt.

14 years ago[doc] Fix typo
Behdad Esfahbod [Mon, 30 Nov 2009 21:09:55 +0000 (16:09 -0500)]
[doc] Fix typo

14 years ago[fc-cache] Document -r argument in man page
Behdad Esfahbod [Fri, 20 Nov 2009 23:44:04 +0000 (18:44 -0500)]
[fc-cache] Document -r argument in man page

14 years agoBump version to 2.8.0 2.8.0
Behdad Esfahbod [Wed, 18 Nov 2009 23:45:19 +0000 (18:45 -0500)]
Bump version to 2.8.0

14 years agoBump libtool revision in preparation for release
Behdad Esfahbod [Wed, 18 Nov 2009 23:45:06 +0000 (18:45 -0500)]
Bump libtool revision in preparation for release

14 years agoImprove zip "distribution"
Tor Lillqvist [Wed, 18 Nov 2009 19:56:16 +0000 (21:56 +0200)]
Improve zip "distribution"

Don't put entries for directories in the zip file. Fetch manpages from
correct place.

14 years agoUse correct autoconf variable
Tor Lillqvist [Wed, 18 Nov 2009 19:54:39 +0000 (21:54 +0200)]
Use correct autoconf variable

Use LIBT_CURRENT_MINUS_AGE instead of the undefined
lt_current_minus_age for the name of the DLL when generating the MS
style import library.

14 years ago[fc-arch] Rename architecture names to better reflect what they are
Behdad Esfahbod [Wed, 18 Nov 2009 19:39:34 +0000 (14:39 -0500)]
[fc-arch] Rename architecture names to better reflect what they are

We only care about three properties in the arch:

  - endianness
  - pointer size
  - for 32-bit archs, whether double is aligned on 4 or 8 bytes

This leads to the following 6 archs (old name -> new name):

x86    -> le32d4
mipsel -> le32d8
x86-64 -> le64
m68k   -> be32d4
ppc    -> be32d8
ppc64  -> be64

14 years ago[fc-arch] Beautify the arch template
Behdad Esfahbod [Wed, 18 Nov 2009 19:08:00 +0000 (14:08 -0500)]
[fc-arch] Beautify the arch template

14 years ago[fc-case] Update CaseFolding.txt to Unicode 5.2.0
Behdad Esfahbod [Wed, 18 Nov 2009 14:40:11 +0000 (09:40 -0500)]
[fc-case] Update CaseFolding.txt to Unicode 5.2.0

14 years ago[fc-glyphname] Remove Adobe glyphlist
Behdad Esfahbod [Wed, 18 Nov 2009 14:36:23 +0000 (09:36 -0500)]
[fc-glyphname] Remove Adobe glyphlist

It was unused.

14 years agoClean up Makefile's a bit
Behdad Esfahbod [Wed, 18 Nov 2009 14:35:40 +0000 (09:35 -0500)]
Clean up Makefile's a bit

14 years ago[fc-glyphname] Rename internal arrays to prefix with _fc_
Behdad Esfahbod [Wed, 18 Nov 2009 14:26:24 +0000 (09:26 -0500)]
[fc-glyphname] Rename internal arrays to prefix with _fc_

Although they were static, I was still surprised that gdb was seeing
our variable "glyphs".  Not helpful.

14 years ago[src] Create fcglyphname.h automatically
Behdad Esfahbod [Wed, 18 Nov 2009 14:26:01 +0000 (09:26 -0500)]
[src] Create fcglyphname.h automatically

14 years ago[fc-glyphname] Cleanup Makefile.am
Behdad Esfahbod [Wed, 18 Nov 2009 14:25:42 +0000 (09:25 -0500)]
[fc-glyphname] Cleanup Makefile.am

14 years agoRemove bogus comment
Behdad Esfahbod [Wed, 18 Nov 2009 14:10:05 +0000 (09:10 -0500)]
Remove bogus comment

Last night in between my dreams I also noticed that we support Unicode
values up to 0x01000000 and not 0x00100000 which I thought before.
This covers the entire Unicode range.

14 years agoMake sure fclang.h and fcarch.h are built
Behdad Esfahbod [Tue, 17 Nov 2009 17:10:01 +0000 (12:10 -0500)]
Make sure fclang.h and fcarch.h are built

14 years ago[lang] Fix serializing LangSet from older versions
Behdad Esfahbod [Mon, 16 Nov 2009 23:29:26 +0000 (18:29 -0500)]
[lang] Fix serializing LangSet from older versions

14 years ago[arch] Try to ensure proper FcLangSet alignment in arch
Behdad Esfahbod [Mon, 16 Nov 2009 22:38:40 +0000 (17:38 -0500)]
[arch] Try to ensure proper FcLangSet alignment in arch

14 years ago[xml] Remove unused code
Behdad Esfahbod [Mon, 16 Nov 2009 22:00:50 +0000 (17:00 -0500)]
[xml] Remove unused code

14 years ago[int] Remove more unused macros
Behdad Esfahbod [Mon, 16 Nov 2009 21:57:53 +0000 (16:57 -0500)]
[int] Remove more unused macros

14 years agoEnable automake silent rules
Behdad Esfahbod [Mon, 16 Nov 2009 20:48:20 +0000 (15:48 -0500)]
Enable automake silent rules

14 years ago[int] Remove fc_value_* macros that did nothing other than renaming
Behdad Esfahbod [Mon, 16 Nov 2009 20:46:46 +0000 (15:46 -0500)]
[int] Remove fc_value_* macros that did nothing other than renaming

14 years ago[int] Remove fc_storage_type() in favor of direct access to v->type
Behdad Esfahbod [Mon, 16 Nov 2009 20:43:08 +0000 (15:43 -0500)]
[int] Remove fc_storage_type() in favor of direct access to v->type

14 years agoRemove unused macros
Behdad Esfahbod [Mon, 16 Nov 2009 20:41:58 +0000 (15:41 -0500)]
Remove unused macros

14 years agoBump cache version up from 2 to 3 and fix FcLangSet caching/crash
Behdad Esfahbod [Mon, 16 Nov 2009 20:39:16 +0000 (15:39 -0500)]
Bump cache version up from 2 to 3 and fix FcLangSet caching/crash

Protect cache against future expansions of FcLangSet (adding new
orth files).  Previously, doing so could change the size of
that struct.  Indeed, that happened between 2.6.0 and 2.7.3, causing
crashes.  Unfortunately, sizeof(FcLangSet) was not checked in fcarch.c.

This changes FcLangSet code to be able to cope with struct size changes.
And change cache format, hence bumping from 2 to 3.

14 years ago[int] Define MIN/MAX/ABS macros
Behdad Esfahbod [Mon, 16 Nov 2009 21:57:10 +0000 (16:57 -0500)]
[int] Define MIN/MAX/ABS macros

14 years ago[fc-arch] Add FcAlign to arch signature
Behdad Esfahbod [Mon, 16 Nov 2009 20:17:56 +0000 (15:17 -0500)]
[fc-arch] Add FcAlign to arch signature

14 years agoMove FcAlign to fcint.h
Behdad Esfahbod [Mon, 16 Nov 2009 20:12:52 +0000 (15:12 -0500)]
Move FcAlign to fcint.h

14 years agoClarify default confdir and cachedir better.
Behdad Esfahbod [Mon, 9 Nov 2009 18:17:17 +0000 (13:17 -0500)]
Clarify default confdir and cachedir better.

Also remove --with-docdir.  It can be set by setting docdir variable.

15 years agoBump version to 2.7.3 2.7.3
Behdad Esfahbod [Tue, 8 Sep 2009 15:45:26 +0000 (11:45 -0400)]
Bump version to 2.7.3

15 years agoBump libtool version in preparation for release
Behdad Esfahbod [Tue, 8 Sep 2009 15:44:59 +0000 (11:44 -0400)]
Bump libtool version in preparation for release

15 years agoUse default config in FcFileScan() and FcDirScan()
Behdad Esfahbod [Mon, 7 Sep 2009 02:10:22 +0000 (22:10 -0400)]
Use default config in FcFileScan() and FcDirScan()

Before a NULL config was passed down adn essentially FcFileScan was
equivalent to FcFreeTypeQuery.  Now fc-scan tool correctly applies
the configuration to the scanned patterns.

15 years agoUpdated Arabic, Persian, and Urdu orthographies
Roozbeh Pournader [Thu, 3 Sep 2009 03:03:42 +0000 (20:03 -0700)]
Updated Arabic, Persian, and Urdu orthographies

- Arabic (ar), Persian (fa), and Urdu (ur) now use generic forms (bug #23004)
- Persian (fa) orthography updated to latest standards and orthographies
- Persian dialects Dari/Eastern Farsi (prs) and Western Farsi (pes) added

15 years agoCorrect Ewe (ee) orthography to use U+025B (bug #20711)
Roozbeh Pournader [Thu, 3 Sep 2009 01:54:24 +0000 (18:54 -0700)]
Correct Ewe (ee) orthography to use U+025B (bug #20711)

15 years agoBump version to 2.7.2 2.7.2
Behdad Esfahbod [Mon, 31 Aug 2009 21:32:36 +0000 (17:32 -0400)]
Bump version to 2.7.2

15 years agoBump libtool version for release
Behdad Esfahbod [Mon, 31 Aug 2009 21:32:13 +0000 (17:32 -0400)]
Bump libtool version for release

15 years agoRevert "Fix FcNameUnparseLangSet()" and redo it
Behdad Esfahbod [Wed, 26 Aug 2009 00:40:30 +0000 (20:40 -0400)]
Revert "Fix FcNameUnparseLangSet()" and redo it

This reverts commit 5c6d1ff23bda4386984a1d6e4c024958f8f5547c and
fixes that bug using the new reverse-map I added in the previous
commit.

15 years agoBug 23419 - "contains" expression seems not working on the fontconfig rule
Behdad Esfahbod [Wed, 26 Aug 2009 00:39:20 +0000 (20:39 -0400)]
Bug 23419 - "contains" expression seems not working on the fontconfig rule

Fix bug in FcLangSetContains(), similar to
5c6d1ff23bda4386984a1d6e4c024958f8f5547c

15 years agoBug 22037 - No Fonts installed on a default install on Windows Server 2003
Behdad Esfahbod [Fri, 21 Aug 2009 17:41:41 +0000 (13:41 -0400)]
Bug 22037 - No Fonts installed on a default install on Windows Server 2003

Make it easy to install on older Windows

15 years agoUse multi-byte codepage aware string function on Windows
Tor Lillqvist [Thu, 13 Aug 2009 21:16:18 +0000 (00:16 +0300)]
Use multi-byte codepage aware string function on Windows

The East Asian double-byte codepages have characters with backslash as
the second byte, so we must use _mbsrchr() instead of strrchr() when
looking at pathnames in the system codepage.

15 years agoFix heap corruption on Windows in FcEndElement()
Tor Lillqvist [Thu, 13 Aug 2009 21:08:17 +0000 (00:08 +0300)]
Fix heap corruption on Windows in FcEndElement()

Must not call FcStrFree() on a value returned by
FcStrBufDoneStatic(). In the Windows code don't bother with dynamic
allocation, just use a local buffer.

15 years agoFix MinGW compilation
Tor Lillqvist [Thu, 13 Aug 2009 21:02:59 +0000 (00:02 +0300)]
Fix MinGW compilation

Need to define _WIN32_WINNT as 0x0500 to get declaration for
GetSystemWindowsDirectory().

15 years ago[ja.orth] Comment out FULLWIDTH YEN SIGN (#22942)
Behdad Esfahbod [Tue, 28 Jul 2009 18:24:21 +0000 (14:24 -0400)]
[ja.orth] Comment out FULLWIDTH YEN SIGN (#22942)

15 years agoImprove charset printing
Behdad Esfahbod [Tue, 28 Jul 2009 18:23:10 +0000 (14:23 -0400)]
Improve charset printing

15 years agoBump version to 2.7.1 2.7.1
Behdad Esfahbod [Mon, 27 Jul 2009 21:53:26 +0000 (17:53 -0400)]
Bump version to 2.7.1

15 years agoUpdate .gitignore
Behdad Esfahbod [Mon, 27 Jul 2009 21:51:17 +0000 (17:51 -0400)]
Update .gitignore

15 years agoBump libtool versions that 2.7.0 (I forgot to do back then)
Behdad Esfahbod [Mon, 27 Jul 2009 21:48:29 +0000 (17:48 -0400)]
Bump libtool versions that 2.7.0 (I forgot to do back then)

15 years agoHardcode /etc/fonts instead of @CONFDIR@ in docs (#22911)
Behdad Esfahbod [Mon, 27 Jul 2009 19:07:12 +0000 (15:07 -0400)]
Hardcode /etc/fonts instead of @CONFDIR@ in docs (#22911)

We distribute the docs, so it makes little sense to distribute with
@CONFDIR@ replaced.  Until we find a better solution, I've hardcoded
/etc/fonts now.

15 years ago[doc] Add ~/fonts.conf.d to user docs
Behdad Esfahbod [Mon, 27 Jul 2009 18:50:44 +0000 (14:50 -0400)]
[doc] Add ~/fonts.conf.d to user docs

15 years agoTT_MS_ID_UCS_4 is really UTF-16BE, not UTF-32
Behdad Esfahbod [Sat, 25 Jul 2009 20:38:52 +0000 (16:38 -0400)]
TT_MS_ID_UCS_4 is really UTF-16BE, not UTF-32

Reported by Yuriy Kaminskiy.

15 years agoFix doc syntax (#22902)
Behdad Esfahbod [Fri, 24 Jul 2009 18:59:07 +0000 (14:59 -0400)]
Fix doc syntax (#22902)

15 years agoFix FcNameUnparseLangSet()
Behdad Esfahbod [Wed, 22 Jul 2009 23:25:24 +0000 (19:25 -0400)]
Fix FcNameUnparseLangSet()

Was broken since ffd6668b469508177c4baf7745ae42aee5b00322

15 years agoRemove unused macros
Behdad Esfahbod [Wed, 22 Jul 2009 23:01:06 +0000 (19:01 -0400)]
Remove unused macros

15 years agoDon't change the order of names unnecessarily (#20128)
Karl Tomlinson [Wed, 22 Jul 2009 12:39:23 +0000 (08:39 -0400)]
Don't change the order of names unnecessarily (#20128)

so that TT_NAME_ID_PREFERRED_FAMILY is consistently preferred over
TT_NAME_ID_FONT_FAMILY when both are specified for the default language.

15 years agoUse GetSystemWindowsDirectory() instead of GetWindowsDirectory() (#22037)
Behdad Esfahbod [Tue, 21 Jul 2009 19:41:47 +0000 (15:41 -0400)]
Use GetSystemWindowsDirectory() instead of GetWindowsDirectory() (#22037)

15 years agoImprove libtool version parsing (#22122)
Behdad Esfahbod [Tue, 21 Jul 2009 19:39:58 +0000 (15:39 -0400)]
Improve libtool version parsing (#22122)

15 years agoFix leak with string VStack objects
Behdad Esfahbod [Mon, 20 Jul 2009 20:30:12 +0000 (16:30 -0400)]
Fix leak with string VStack objects

15 years agoAdd Inconsolata to monospace config (#22710)
Behdad Esfahbod [Fri, 10 Jul 2009 17:09:42 +0000 (18:09 +0100)]
Add Inconsolata to monospace config (#22710)

15 years agoRemove unused ftglue code
Behdad Esfahbod [Sun, 28 Jun 2009 18:14:46 +0000 (14:14 -0400)]
Remove unused ftglue code

15 years agoReplace spaces with tabs in conf files
Behdad Esfahbod [Sun, 28 Jun 2009 17:49:09 +0000 (13:49 -0400)]
Replace spaces with tabs in conf files

15 years agoFix win32 build
Behdad Esfahbod [Sun, 28 Jun 2009 17:46:41 +0000 (13:46 -0400)]
Fix win32 build

15 years agogit-tag -s again
Behdad Esfahbod [Wed, 24 Jun 2009 19:19:13 +0000 (15:19 -0400)]
git-tag -s again

15 years agoBump version to 2.7.0 2.7.0
Behdad Esfahbod [Wed, 24 Jun 2009 19:04:11 +0000 (15:04 -0400)]
Bump version to 2.7.0

15 years agoRemove keithp's GPG key id
Behdad Esfahbod [Wed, 24 Jun 2009 19:03:32 +0000 (15:03 -0400)]
Remove keithp's GPG key id

15 years agoFix distcheck
Behdad Esfahbod [Wed, 24 Jun 2009 18:43:32 +0000 (14:43 -0400)]
Fix distcheck

15 years agoBug 22154 -- fontconfig.pc doesn't include libxml2 link flags
Behdad Esfahbod [Thu, 11 Jun 2009 11:08:10 +0000 (07:08 -0400)]
Bug 22154 -- fontconfig.pc doesn't include libxml2 link flags

15 years ago[xml] Intern more strings
Behdad Esfahbod [Sat, 6 Jun 2009 02:59:06 +0000 (22:59 -0400)]
[xml] Intern more strings

15 years ago[xml] Allocate FcExpr's in a pool in FcConfig
Behdad Esfahbod [Sat, 6 Jun 2009 02:32:31 +0000 (22:32 -0400)]
[xml] Allocate FcExpr's in a pool in FcConfig

Reduces number of malloc's for FcExprs from hundreds into single digits.

15 years ago[xml] Mark more symbols static
Behdad Esfahbod [Sat, 6 Jun 2009 01:37:01 +0000 (21:37 -0400)]
[xml] Mark more symbols static

15 years ago[xml] Centralize FcExpr allocation
Behdad Esfahbod [Fri, 5 Jun 2009 22:40:46 +0000 (18:40 -0400)]
[xml] Centralize FcExpr allocation

To be improved, using a central pool.

15 years agoRemove unused prototypes and function
Behdad Esfahbod [Fri, 5 Jun 2009 22:27:47 +0000 (18:27 -0400)]
Remove unused prototypes and function

15 years ago[charset] Grow internal FcCharset arrays exponentially
Behdad Esfahbod [Fri, 5 Jun 2009 22:16:38 +0000 (18:16 -0400)]
[charset] Grow internal FcCharset arrays exponentially

15 years agoAlways set *changed in FcCharsetMerge
Behdad Esfahbod [Fri, 5 Jun 2009 21:15:53 +0000 (17:15 -0400)]
Always set *changed in FcCharsetMerge

15 years agoAdd XXX note about Unicode Plane 16
Behdad Esfahbod [Fri, 5 Jun 2009 20:57:35 +0000 (16:57 -0400)]
Add XXX note about Unicode Plane 16

15 years agoSimplify FcValueSave() semantics
Behdad Esfahbod [Fri, 5 Jun 2009 20:49:07 +0000 (16:49 -0400)]
Simplify FcValueSave() semantics

15 years agoUse/prefer WWS family/style (name table id 21/22)
Behdad Esfahbod [Tue, 2 Jun 2009 01:14:56 +0000 (21:14 -0400)]
Use/prefer WWS family/style (name table id 21/22)

15 years agoMark matchers array const (#21935)
Behdad Esfahbod [Tue, 26 May 2009 00:26:56 +0000 (20:26 -0400)]
Mark matchers array const (#21935)

15 years agoReorganize Panjabi/Punjabi and Lahnda orthographies (bug #19890)
Roozbeh Pournader [Thu, 7 May 2009 21:31:11 +0000 (14:31 -0700)]
Reorganize Panjabi/Punjabi and Lahnda orthographies (bug #19890)

The correct ISO 639 code for Pakistani/Western Panjabi seems to be 'lah',
not 'pa'. We are keeping 'pa_pk.orth' for compatiblity with glibc.

Signed-off-by: Behdad Esfahbod <behdad@behdad.org>