groovy

GroovyMain command line switch -i fails when no backup extension is specified

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.0-JSR-1
  • Fix Version/s: 1.0-JSR-3
  • Component/s: None
  • Labels:
    None
  • Number of attachments :
    1

Description

The command

groovy -pi -e "(line =~ 'a').replaceAll('b')" ok.txt

fails with

Caught: java.io.IOException: unable to rename ok.txt to C:\DOCUME~1\TOMWHI~1\LOC
ALS~1\Temp\groovy_61377.tmp

whereas

groovy -pi.bak -e "(line =~ 'a').replaceAll('b')" ok.txt

works fine.

The problem is that after creating a temporary backup file using File.createTempFile() the code needs to delete it before renaming the original to the backup.

The attached patch file fixes the problem.

Activity

Hide
Dierk Koenig added a comment -

applied the patch.

Hi Tom! Nice Blog! and thanx for the posting

Show
Dierk Koenig added a comment - applied the patch. Hi Tom! Nice Blog! and thanx for the posting

People

Vote (1)
Watch (1)

Dates

  • Created:
    Updated:
    Resolved: