Can someone explain to me why I'm getting the error below for this part
of a script? It doesn't seem to like line 24, the scan line, but, I've
got this same code being used for other needs and it doesn't complain at
all there.
indexpagecounts_6x9.rbw:24:in `scan': string modified (RuntimeError)
from indexpagecounts_6x9.rbw:24
from indexpagecounts_6x9.rbw:20:in `each'
from indexpagecounts_6x9.rbw:20
Can someone explain to me why I'm getting the error below for this part
of a script? It doesn't seem to like line 24, the scan line, but, I've
got this same code being used for other needs and it doesn't complain at
all there.
23 file_contents = File.read(psfile)
24 file_contents.scan(/\%\%Pages: (\d{1,5})+\n/) do
28 file_contents << "\%\%Blank page for Asura.\n\%\%Page:
32 end
...
getting this error:
rubyw indexpagecounts_6x9.rbw
indexpagecounts_6x9.rbw:24:in `scan': string modified (RuntimeError)
from indexpagecounts_6x9.rbw:24
from indexpagecounts_6x9.rbw:20:in `each'
from indexpagecounts_6x9.rbw:20
Exit code: 1
You're modifying file_contents during scan, so scan gets confused.
from what I see, you'd better use gsub! with a block, since, if I
understood your point, you are basically inserting text where you detect
something.
You're modifying file_contents during scan, so scan gets confused.
from what I see, you'd better use gsub! with a block, since, if I
understood your point, you are basically inserting text where you detect
something.
Vince
Thanks, Vince. I see what you mean, and, I did change it to use a gsub!.
I've always thought of gsub as a changer for little things, not huge
files like this, but, it works fine. Thanks again.