how to trouble shoot - RuntimeError: Open Failed
stas poritskiy
stascrash at gmail.com
Fri Sep 6 15:28:05 EDT 2013
Guys, as i was writing a very detailed message with code samples, following the guide that Steven linked, i found the problem. a pretty lame one, actually.
in my class that was processing the images, i created an object instance, via
__INIT__ , self.data = attributes()
but i was iterating through list of folders, so object was filled with the correct data, but it was never re-initialized for the new one.
i move my objects into a function, and called the function on each loop-start,
so objects are re-created and re-filled with the data.
Terry, yeah, your confusion was right, and pointing out that i was supposed to get IOError. that lead me to inspect code again and again :)
anyways, thanks and sorry for the mess )
On Friday, September 6, 2013 1:49:57 PM UTC-5, Terry Reedy wrote:
> On 9/6/2013 1:05 PM, stas poritskiy wrote:
>
> > The code in development is mine, and i am using the API provided by a main developer.
>
> >
>
> > At the moment, i am not using any try/except functionality.
>
> >
>
> > here is the full Exception output:
>
> > [CODE]
>
> > Exception in Tkinter callback
>
> > Traceback (most recent call last):
>
> > File "C:\Python27\32bit\lib\lib-tk\Tkinter.py", line 1470, in __call__
>
> > return self.func(*args)
>
> > File "E:\sporitskiy\HON\Project\scene7\s7operator\gui.py", line 59, in <lambda>
>
> > cmd1 = lambda: vntProcessor.colData(folders.path, folders.subFolders)
>
> > File "E:\sporitskiy\HON\Project\scene7\s7operator\vntProcessor.py", line 184, in colData
>
> > setVars()
>
> > File "E:\sporitskiy\HON\Project\scene7\s7operator\vntProcessor.py", line 79, in __call__
>
> > self.batchFiles()
>
> > File "E:\sporitskiy\HON\Project\scene7\s7operator\vntProcessor.py", line 55, in batchFiles
>
> > self.vntConnect.createVNTobjects(self.vntObjMgroup.keyList, self.vntLtoF.keyValList, self.vntObjFile.keyList, myPath)
>
> > File "E:\sporitskiy\HON\Project\scene7\s7operator\vntProcessor.py", line 113, in createVNTobjects
>
> > self.createImage(groupName, layerName, fileName, imagePath, self.vntGroups)
>
> > File "E:\sporitskiy\HON\Project\scene7\s7operator\vntProcessor.py", line 137, in createImage
>
> > img = open_image(imageFile)
>
> > File "<string>", line 2, in open_image
>
> > File "C:\Python27\32bit\lib\site-packages\s7vampy\arg_validator.py", line 213, in __call__
>
> > return func(*args, **keywords)
>
> > File "C:\Python27\32bit\lib\site-packages\s7vampy\image.py", line 181, in open_image
>
> > return Image(_S7VAM_IMAGE.Open(filename))
>
> > RuntimeError: Open Failed: 'C:/Users/sporitskiy/Desktop/Practice/HIWM2MSB/hiwm2mpa_upholstery_esq_leather_ro_12_0001.tif'
>
>
>
> We were confused because the failed open should be an IOError. If Image
>
> is indeed converting such to RuntimeError, it should not. It should just
>
> let the original error bubble up. It is possibly tossing information in
>
> the process. The first thing I would do is to look at the code around
>
> that line in image.py and remove the exception replacement if there is one.
>
>
>
> --
>
> Terry Jan Reedy
More information about the Python-list
mailing list