Mercurial > audlegacy-plugins
view po/insert-header.sin @ 3176:dca77b467ea2
Fix a race condition which can occur when flushing the output buffer, causing
two locking g_conds to occur at unexpected order, halting the execution.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 05 Jun 2009 02:32:48 +0300 |
parents | 6bb98fbbae04 |
children |
line wrap: on
line source
# Sed script that inserts the file called HEADER before the header entry. # # At each occurrence of a line starting with "msgid ", we execute the following # commands. At the first occurrence, insert the file. At the following # occurrences, do nothing. The distinction between the first and the following # occurrences is achieved by looking at the hold space. /^msgid /{ x # Test if the hold space is empty. s/m/m/ ta # Yes it was empty. First occurrence. Read the file. r HEADER # Output the file's contents by reading the next line. But don't lose the # current line while doing this. g N bb :a # The hold space was nonempty. Following occurrences. Do nothing. x :b }