View Issue Details

IDProjectCategoryView StatusLast Update
0002667Far ManagerRegExppublic2014-05-16 08:39
ReporterAidar Assigned To2useven10  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Platformx64OSWindows 
Summary0002667: Вылет FAR при использовании регэкспа "[A-Z\\]+"
DescriptionПри выполнении lua-скрипта вида
local s = "[A-Z\\]+"
local r = regex.new(s)
local m = r:match("some text with \\.")
происходит вылет FAR.
Если переставить BackSlash на начало множества символов, вылета не будет.
TagsNo tags attached.
Build3893

Activities

Aidar

2014-05-07 11:32

reporter  

TestRegex1.lua (87 bytes)

Aidar

2014-05-07 11:32

reporter  

TestRegex2.lua (87 bytes)

Aidar

2014-05-07 11:33

reporter  

Aidar

2014-05-07 11:33

reporter   bugnote:0012375

TestRegex1.lua - скрипт с вылетом,
TestRegex2.lua - скрипт без вылета.

Aidar

2014-05-07 11:53

reporter   bugnote:0012376

Last edited: 2014-05-07 11:54

View 2 revisions

Кажется, понял: надо дважды экранировать:
один раз - для lua-строки, ещё один раз - для регэкспа.

Но вылет лучше бы предотвратить, если это возможно.

shmuel

2014-05-07 12:11

developer   bugnote:0012377

Один раз мне удалось повторить этот вылет во встроенном поиске редактора на выражении [A-Z\]+

shmuel

2014-05-07 12:48

developer   bugnote:0012378

Во встроенном поиске редактора, даже если не падает, то ведёт себя странно, например:
находит один символ, затем по ShiftF7 несколько раз опять находит один символ, потом перестаёт продвигаться - видимо, находит пустую строку.

shmuel

2014-05-07 15:41

developer   bugnote:0012382

Last edited: 2014-05-07 15:46

View 2 revisions

В общем причина ясна:
Движок регекспов Фара не сигнализирует данный невалидный регексп как невалидный. В частности, RECTL_COMPILE не возвращает FALSE.

2useven10

2014-05-08 13:19

developer   bugnote:0012383

3893

Aidar

2014-05-09 11:37

reporter   bugnote:0012388

Проверено на FAR 3.0.3895 x64 - работает:
выдаёт ошибку о неправильности регэкспа.

Issue History

Date Modified Username Field Change
2014-05-07 11:32 Aidar New Issue
2014-05-07 11:32 Aidar File Added: TestRegex1.lua
2014-05-07 11:32 Aidar File Added: TestRegex2.lua
2014-05-07 11:33 Aidar File Added: FarTrap_20140507141735.log
2014-05-07 11:33 Aidar Note Added: 0012375
2014-05-07 11:53 Aidar Note Added: 0012376
2014-05-07 11:54 Aidar Note Edited: 0012376 View Revisions
2014-05-07 12:11 shmuel Note Added: 0012377
2014-05-07 12:48 shmuel Note Added: 0012378
2014-05-07 15:41 shmuel Note Added: 0012382
2014-05-07 15:46 shmuel Note Edited: 0012382 View Revisions
2014-05-08 13:19 2useven10 Note Added: 0012383
2014-05-08 13:19 2useven10 Assigned To => 2useven10
2014-05-08 13:19 2useven10 Status new => feedback
2014-05-09 11:37 Aidar Note Added: 0012388
2014-05-09 11:37 Aidar Status feedback => assigned
2014-05-12 10:30 2useven10 Build => 3893
2014-05-12 10:30 2useven10 Status assigned => closed
2014-05-12 10:30 2useven10 Resolution open => fixed