Ticket #18 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

Opera problem with tiddlers >32KB

Reported by: JeremyRuston Owned by: JeremyRuston
Priority: major Milestone: 2.1
Component: core Version:
Severity: medium Keywords:
Cc:

Change History

Changed 6 years ago by JeremyRuston

  • status changed from new to closed
  • resolution set to fixed

Fixed in changeset:181

Changed 6 years ago by JeremyRuston

  • status changed from closed to reopened
  • resolution fixed deleted

Changed 6 years ago by JeremyRuston

  • status changed from reopened to closed
  • resolution set to fixed

Properly fixed in changeset:268

Changed 6 years ago by UdoBorkowski

Bug is still not fixed.

Here the current code:

	while (e && e.nodeName == "#text")
		{
		text += Tiddler.unescapeLineBreaks(e.nodeValue);
		e = e.nextSibling;
		}

The problem here is that each chunk is "linebreak unescaped" on its own. If a "\n" (2-chars) sequence is exactly at the border the backslash will go into the first chunk and the "n" into the second. Finally we end up with an not unescaped linebreak. This leads to problems as reported in this  post.

It was hard to track down this problem since you need to ensure that the "cut" is exactly between the "\" and the "n". Since the tiddlers are stored behind the code section every change to the code for debugging easily "fixes" the problem.

To fix this problem one better first collects the full text and then does one "unescapeLineBreaks" on the full text.

I.e.:

	while (e && e.nodeName == "#text")
		{
		text += e.nodeValue;
		e = e.nextSibling;
		}
	text = String.unescapeLineBreaks(text);

Changed 6 years ago by UdoBorkowski

Fixed in contributors/UdoBorkowski/Branches/2.1/ with changeset:328

Changed 6 years ago by JeremyRuston

  • status changed from closed to reopened
  • resolution fixed deleted

Changed 6 years ago by JeremyRuston

  • status changed from reopened to new

Changed 6 years ago by JeremyRuston

  • status changed from new to assigned

Changed 6 years ago by JeremyRuston

  • status changed from assigned to closed
  • resolution set to fixed

Fixed (again) in changeset:344

Note: See TracTickets for help on using tickets.