Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port of FS328 - Unlike 3.6.1, 3.7 on does do not allow = char in scene name. #120

Open
wfpokorny opened this issue Oct 15, 2016 · 6 comments
Assignees
Labels
bug reported or triaged as proper bug, i.e. not working as designed, and affecting all platforms ToDo: research action required: research possible solutions

Comments

@wfpokorny
Copy link
Contributor

wfpokorny commented Oct 15, 2016

http://bugs.povray.org/task/32

User interface. Linux. No scene file needed. Command: povray one=two.pov


Details:

The following command fails with parsing error:

povray +OqXfFbD0Vg5XjZgi5sOefkvdF_oCGrZ1ChVhrQw==.png +IqXfFbD0Vg5XjZgi5sOefkvdF_oCGrZ1ChVhrQw==.pov +W1000 +H1000

The following command succeeds:

povray +OqXfFbD0Vg5XjZgi5sOefkvdF_oCGrZ1ChVhrQw.png +IqXfFbD0Vg5XjZgi5sOefkvdF_oCGrZ1ChVhrQw.pov +W1000 +H1000

Any option that gets a filename as parameter will fail if it contains '='.

It is a regression, as it worked fine with 3.6

@wfpokorny
Copy link
Contributor Author

Notes.

I'm getting a segmentation fault. As mentioned it happens with more than scene file names. I just triggered it with the command line typo:

File_Gamm=sRGB

Where typing:

File_Gamma=aRGB

Triggers a failed to parse message.

@wfpokorny
Copy link
Contributor Author

Tracked part of the issue here to the following call in vfe/vfecontrol.cpp :

if ((err = options.ParseString (i->c_str(), &obj)) != kNoErr)

where it should be:

if ((err = options.ParseString (i->c_str(), &obj, true)) != kNoErr)

because we are passing command line arguments one at a time and the ParseString default is false.

With the change above stuff like File_Gamm=sRGB now comes back with a parse error instead of a seg fault.

There is unfortunately some issue behind the first (v37 or v38) where if one uses say:

+ohmm=2.png

you end up with and output file with single quotes around it like: 'hmm=2.png' where if you do:

+ohmm.png

you get an output file of hmm.png as one might expect. So... there is still some issue with the '=' chars and file names to be sorted out. Should also look at +L flags too as reasonable to expect they are getting mangled too, but who knows. Not able to look at the issue behind the issue at the moment.

Lastly, I don't have windows so didn't test it, but it looked like windows might have been OK at least by some command line to parsing paths. At least one method correctly used true on the ParseString call.

@chris20
Copy link
Member

chris20 commented Aug 13, 2020

Good find ... I'll take a closer look and see if I can locate a workaround or fix that works on all platforms.

@c-lipka c-lipka added the ToDo: user feedback action by reporting user required: needs more information label Jun 11, 2021
@c-lipka
Copy link
Contributor

c-lipka commented Jun 11, 2021

@chris20 Any news on this?

@c-lipka c-lipka added ToDo: research action required: research possible solutions project triage pending still need to decide in which branch to tackle this labels Jun 11, 2021
@c-lipka
Copy link
Contributor

c-lipka commented Jun 16, 2021

For the records: I'll file this as "long-standing issue that we haven't found a simple solution to yet, so we sure don't want to tackle it in a hurry while we prepare for v3.8.0 release".

@c-lipka c-lipka added bug reported or triaged as proper bug, i.e. not working as designed, and affecting all platforms and removed ToDo: user feedback action by reporting user required: needs more information project triage pending still need to decide in which branch to tackle this labels Jun 16, 2021
@wfpokorny
Copy link
Contributor Author

See too:

[BUG][UNIX] Failed to parse command line option with space in filename #448

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug reported or triaged as proper bug, i.e. not working as designed, and affecting all platforms ToDo: research action required: research possible solutions
Projects
None yet
Development

No branches or pull requests

3 participants