projects
/
m17n
/
m17n-lib-cs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
008f303
)
*** empty log message ***
author
handa
<handa>
Thu, 30 Apr 2009 02:04:56 +0000
(
02:04
+0000)
committer
handa
<handa>
Thu, 30 Apr 2009 02:04:56 +0000
(
02:04
+0000)
MText.cs
patch
|
blob
|
history
textprop.cs
patch
|
blob
|
history
diff --git
a/MText.cs
b/MText.cs
index
4a8d448
..
6f529a8
100644
(file)
--- a/
MText.cs
+++ b/
MText.cs
@@
-521,6
+521,9
@@
namespace M17N.Core
root.PopSensitive (from, to);
else
root.Pop (from, to);
root.PopSensitive (from, to);
else
root.Pop (from, to);
+ root = (MInterval) p.Val;
+ if (M17n.debug)
+ DumpPropNested ();
root.MergeAfterChange (from, to);
root.Balance ();
}
root.MergeAfterChange (from, to);
root.Balance ();
}
@@
-1293,7
+1296,7
@@
namespace M17N.Core
/// intervals are mergeable.
private static void combine (MInterval head, MInterval tail)
{
/// intervals are mergeable.
private static void combine (MInterval head, MInterval tail)
{
- M17n.DebugPrint ("merging "); head.DumpOne (true, false);
+ M17n.DebugPrint ("combining "); head.DumpOne (true, false);
M17n.DebugPrint (" through "); tail.DumpOne (true, false);
int from = head.From;
M17n.DebugPrint (" through "); tail.DumpOne (true, false);
int from = head.From;
@@
-1321,6
+1324,7
@@
namespace M17N.Core
else
prev = prev.Parent;
}
else
prev = prev.Parent;
}
+ root.update_from_to ();
}
if (root.To < to)
{
}
if (root.To < to)
{
@@
-1337,6
+1341,7
@@
namespace M17N.Core
else
next = next.Parent;
}
else
next = next.Parent;
}
+ root.update_from_to ();
}
}
}
}
@@
-1359,6
+1364,7
@@
namespace M17N.Core
{
if (head != tail)
combine (head, tail);
{
if (head != tail)
combine (head, tail);
+ i.update_from_to ();
head = i;
}
tail = i;
head = i;
}
tail = i;
diff --git
a/textprop.cs
b/textprop.cs
index
a184c94
..
925b306
100644
(file)
--- a/
textprop.cs
+++ b/
textprop.cs
@@
-198,7
+198,7
@@
public class Test
Random r = new Random (int.Parse (args[0]));
int check = (args.Length > 1 ? int.Parse (args[1]) : 0xFFFFFFF);
Random r = new Random (int.Parse (args[0]));
int check = (args.Length > 1 ? int.Parse (args[1]) : 0xFFFFFFF);
- for (int loop = 0; loop < 100000; loop++)
+ for (int loop = 0; loop < 1000000; loop++)
{
Console.WriteLine ("--- loop = {0} ---\n", loop);
if (loop >= check)
{
Console.WriteLine ("--- loop = {0} ---\n", loop);
if (loop >= check)