rem:  node = node.replace(new RegExp('^(\\S.*)\n(\n+\\S)','gm'), '$1$2'); 
add: node = node.replace(new RegExp('[ \\t]*\n[ \\t]*','gm'), ' '); 
context: function yaml_parse_node (no_next) {  if (! no_next) this.parse_next_line(2); // COLLECTION  var preface   = this.preface;  this.preface  = '';  var node      = '';  var type      = '';  var indicator = '';  var escape    = '';  var chomp     = '';  var info     = this.parse_qualifiers(preface);  var anchor   = info[0];  var alias    = info[1];  var explicit = info[2];  var implicit = info[3];  var yclass   = info[4];  preface      = info[5];  if (alias) {    if (! this.anchors[alias]) return this.error("Parse error - missing alias: "+alias);    return this.anchors[alias];  }  // see if this is a literal or an unfold block  this.inline = '';  if (preface.length) {    m = preface.match('^([>\\|])([+\\-]?)\\d*\\s*');    if (m) {      indicator   = m[1];      chomp       = m[2];      preface     = preface.substring(0,m[0].length);    } else {      this.inline = preface;      preface     = '';    }  }    if (this.inline.length) {    node = this.parse_inline(1, implicit, explicit, yclass);    if (this.inline.length) return this.error("Parse error - must be single line ("+this.inline+')');  } else {    this.level ++;    // block items    if (indicator) {      node = '';      while (! this.done && this.indent == this.offset[this.level]) {        node += this.content + '\n';        this.parse_next_line(1); // LEAF      }      if (indicator == '>') {        //  node = node.replace(new RegExp('^(\\S.*)\n(?=\\S)', 'gm'), '$1');        node = node.replace(new RegExp('^(\\S.*)\n(\n+\\S)','gm'), '$1$2');      }      if (! chomp || chomp == '-') node = node.replace('\n+$','');      if (chomp && chomp == '+')   node += '\n';      if (implicit) node = this.parse_implicit(node);    } else {      if (! this.offset[this.level]) this.offset[this.level] = 0;      if (this.indent == this.offset[this.level]) {        if (this.content.match('^-( |$)')) {          node = this.parse_seq(anchor);        } else if (this.content.match('(^\\?|:( |$))')) {          node = this.parse_map(anchor);        } else if (preface.match('^\\s*$')) {          node = ''; //this.parse_implicit('');        } else {          return this.error('Parse error - bad node +('+this.content+')('+preface+')');        }      } else {        node = '';      }    }    this.level --  }  this.offset = this.offset.splice(0, this.level + 1);  if (explicit) {    if (yclass) return this.error("Parse error - classes not supported");    else node = this.parse_explicit(node, explicit);  }  if (anchor) this.anchors[anchor] = node;  return node;}
meta: 5443	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/5443/075c87d7e596ff9093a32e27ab10d55e69e0175d/yaml_load.js/buggy/lib/CGI/Ex/yaml_load.js