View | Details | Raw Unified | Return to bug 264817 | Differences between
and this patch

Collapse All | Expand All

(-)search/org/eclipse/jdt/internal/core/search/StringOperation.java (-2 / +12 lines)
Lines 361-367 Link Here
361
					break;
361
					break;
362
			}
362
			}
363
		} else {
363
		} else {
364
			if (patternChar != (isCaseSensitive ? name.charAt(iName) : ScannerHelper.toLowerCase(name.charAt(iName)))) {
364
			if (isCaseSensitive) {
365
				if (patternChar != name.charAt(iName)) {
366
					return null;
367
				}
368
			} else if (ScannerHelper.toLowerCase(patternChar) != ScannerHelper.toLowerCase(name.charAt(iName))) {
365
				return null;
369
				return null;
366
			}
370
			}
367
			switch (previous) {
371
			switch (previous) {
Lines 446-452 Link Here
446
					break;
450
					break;
447
			}
451
			}
448
		} else {
452
		} else {
449
			if ((isCaseSensitive ? name.charAt(iName) : ScannerHelper.toLowerCase(name.charAt(iName))) != patternChar) {
453
			boolean mismatch;
454
			if (isCaseSensitive) {
455
				mismatch = name.charAt(iName) != patternChar;
456
			} else {
457
				mismatch = ScannerHelper.toLowerCase(name.charAt(iName)) != ScannerHelper.toLowerCase(patternChar);
458
			}
459
			if (mismatch) {
450
				iPattern = segmentStart; // mismatch - restart current segment
460
				iPattern = segmentStart; // mismatch - restart current segment
451
				iName = ++prefixStart;
461
				iName = ++prefixStart;
452
				start = prefixStart;
462
				start = prefixStart;

Return to bug 264817