Fix Maruku Hanging Bug
A Maruku-syntax <div> with an unclosed IAL (and, it seems, at least one equation) would cause Instiki to hang. Badly. Requiring a 'kill -9' to terminate it. Reverting the OpenDiv and CloseDiv Regexps to my, more simple-minded, versions fixes the problem.
This commit is contained in:
parent
dcab2f870e
commit
53751a61f0
|
@ -1,5 +1,5 @@
|
|||
<div id="svg_logo"><svg version="1.0" width="100%" height="100%" viewBox='0 0 180 197' xmlns='http://www.w3.org/2000/svg'>
|
||||
<path fill="#<%= @web ? @web.color : "393" %>" stroke-width='0.2' stroke='#000' d='
|
||||
<path fill="#<%= @web ? @web.color : "393" %>" stroke-width='0.5' stroke='#000' d='
|
||||
M170,60c4,11-1,20-12,25c-9,4-25,3-20,15c5,5,15,0,24,1c11,1,21,11,14,21c-10,15-35,6-48-1c-5-3-27-23-32-10c-1,13,15,10,22,16
|
||||
c11,4,24,14,34,20c12,10,7,25-9,23c-11-1-22-9-30-16c-5-5-13-18-21-9c-2,6,2,11,5,14c9,9,22,14,22,31c-2,8-12,8-18,4c-4-3-9-8-11-13
|
||||
c-3-6-5-18-12-18c-14-1-5,28-18,30c-9,2-13-9-12-16c1-14,12-24,21-31c5-4,17-13,10-20c-9-10-19,12-23,16c-7,7-17,16-31,15
|
||||
|
|
27
vendor/plugins/maruku/lib/maruku/ext/div.rb
vendored
27
vendor/plugins/maruku/lib/maruku/ext/div.rb
vendored
|
@ -10,11 +10,28 @@
|
|||
#| +--------------------------------------------------
|
||||
#+---------------------------------------------------
|
||||
|
||||
OpenDiv = /^[ ]{0,3}\+\-\-+\s*(\{([^{}]*|".*"|'.*')*\})?\s*\-*\s*$/
|
||||
CloseDiv = /^[ ]{0,3}\=\-\-+\s*(\{([^{}]*|".*"|'.*')*\})?\s*\-*\s*$/
|
||||
# note these are not enough for parsing the above example:
|
||||
#OpenDiv = /^[ ]{0,3}\+\-\-+\s*(.*)$/
|
||||
#CloseDiv = /^[ ]{0,3}\=\-\-+\s*(.*)$/
|
||||
## These cause Instiki to hang when it encounters
|
||||
##
|
||||
## +--
|
||||
## ###### Definition
|
||||
## A _Froelicher Space_ is a triple $(X,C_X,F_X)$
|
||||
## =-- {: .num_defn #FroelicherSpace
|
||||
##
|
||||
## or
|
||||
##
|
||||
## +-- {: .num_defn #FroelicherSpace
|
||||
## ###### Definition
|
||||
## A _Froelicher Space_ is a triple $(X,C_X,F_X)$
|
||||
## =--
|
||||
#
|
||||
#OpenDiv = /^[ ]{0,3}\+\-\-+\s*(\{([^{}]*|".*"|'.*')*\})?\s*\-*\s*$/
|
||||
#CloseDiv = /^[ ]{0,3}\=\-\-+\s*(\{([^{}]*|".*"|'.*')*\})?\s*\-*\s*$/
|
||||
#
|
||||
## note these are not enough for parsing the above example:
|
||||
## (but they don't produce a hang ...)
|
||||
#
|
||||
OpenDiv = /^[ ]{0,3}\+\-\-+\s*(.*)$/
|
||||
CloseDiv = /^[ ]{0,3}\=\-\-+\s*(.*)$/
|
||||
StartPipe = /^[ ]{0,3}\|(.*)$/ # $1 is rest of line
|
||||
DecorativeClosing = OpenDiv
|
||||
|
||||
|
|
Loading…
Reference in a new issue