From c784278e540ffa7d492fc4e1f2560f22ecf07deb Mon Sep 17 00:00:00 2001 From: Basile Burg Date: Mon, 9 Nov 2015 12:49:02 +0100 Subject: [PATCH] more fix related to ranges, switch from ddoc to comment, full block to rescanned due to missing comparison --- src/ce_d2syn.pas | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/ce_d2syn.pas b/src/ce_d2syn.pas index 6dae3e1f..38e756fd 100644 --- a/src/ce_d2syn.pas +++ b/src/ce_d2syn.pas @@ -88,6 +88,8 @@ type rangeKinds: TRangeKinds; primaryRange: TPrimaryRange; secondaryRange: TSecondaryRange; + // double quoted multi-line string prefixed with 'r': + // => don't skip '"' following '\' rString: boolean; public procedure Assign(Src: TSynCustomHighlighterRange); override; @@ -241,19 +243,20 @@ const begin result := inherited Compare(Range); assert(Range <> nil); - {if result <> 0 then exit; + if result <> 0 then exit; // if Range is TSynD2SynRange then begin src_t := TSynD2SynRange(Range); - if (src_t.rString and rString) then exit(0); + if src_t.rangeKinds <> rangeKinds then exit(1); + if src_t.rString <> rString then exit(1); if src_t.nestedCommentsCount <> nestedCommentsCount then exit(cmpRes[src_t.nestedCommentsCount > nestedCommentsCount]); if src_t.tokenStringBracketsCount <> tokenStringBracketsCount then exit(cmpRes[src_t.tokenStringBracketsCount > tokenStringBracketsCount]); if src_t.namedRegionCount <> namedRegionCount then exit(cmpRes[src_t.namedRegionCount > namedRegionCount]); - end; } + end; end; procedure TSynD2SynRange.Clear;