--- tex/texmf-context/tex/context/base/font-otf.lua.old	2008-09-16 21:46:28.501682747 +0800
+++ tex/texmf-context/tex/context/base/font-otf.lua	2008-09-16 21:45:51.196684207 +0800
@@ -5041,7 +5041,7 @@
             stretch = fontdata[font].parameters.quad
         end
         -- penalty before break
-        local interspecialskip   = - stretch * hang_data.inter_char_half_factor
+        local interspecialskip   =   stretch * hang_data.inter_char_half_factor
         local interspecialshrink =   stretch * hang_data.inter_char_half_shrink_factor
         local internormalstretch =   stretch * hang_data.inter_char_stretch_factor
         local trace = fonts.color.trace
@@ -5056,7 +5056,7 @@
                     elseif opening_punctuation_fw[char] or opening_parenthesis_fw[char] then
                         if trace then fcs(current,"font:init") end
                         if head ~= current then
-                            head, _ = insert_before(head,current,nodes.glue(interspecialskip,0,interspecialshrink))
+                            head, _ = insert_before(head,current,nodes.glue(0,0,interspecialskip))
                         end
                         head, current = insert_after(head,current,nodes.penalty(10000))
                         head, current = insert_after(head,current,nodes.glue(0,internormalstretch,0))
@@ -5066,7 +5066,7 @@
                         if prevclass > 0  then
                             head, current = nobreak_before(head,current)
                             head, current = insert_after(head,current,nodes.penalty(10000))
-                            head, current = insert_after(head,current,nodes.glue(interspecialskip,0,interspecialshrink))
+                            head, current = insert_after(head,current,nodes.glue(0,0,interspecialskip))
                             head, current = insert_after(head,current,nodes.penalty(0))
                             head, current = insert_after(head,current,nodes.glue(0,internormalstretch,0))
                         end
