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

Saving profiles into a Windows directory with reparse point fails (Boost::filesystem issue) #732

Closed
blithe74 opened this issue Feb 21, 2018 · 14 comments

Comments

@blithe74
Copy link

Version

Slic3r 1.39.1 beta prusa3d win64
Slic3r-1.39.1-beta-prusa3d-win64-full-201802131107.zip loaded from from github.com

Operating system type + version

Windows 7 Professional x64 SP1 with all critical updates, Russia local.
The user without administrative rights.

Behavior

The programm install on drive D: in dirrectory:
D:\3DPrinter\SoftWare\Slic3r-1.39.1-beta-prusa3d-win64-full-201802131107
The Users dirrectory redirect from SSD to HDD (mklink /J C:\Users D:\Users)

When click to icon "diskette" (with new or such profile name) the program do not save profiles. The dirrectory:
C:\Users\Internet\AppData\Roaming\Slic3rPE\filament\
C:\Users\Internet\AppData\Roaming\Slic3rPE\print
C:\Users\Internet\AppData\Roaming\Slic3rPE\printer
C:\Users\Internet\Application Data\Slic3rPE\filament
C:\Users\Internet\Application Data\Slic3rPE\print
C:\Users\Internet\Application Data\Slic3rPE\printer
is empty.
The user have full access to directories (rights: Read, Write, Delete and etc. is enabled)
slic3r_pe

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 14, 2018

Sorry, but the Windows reparse points (those made by mklink /J) are not supported well by the boost::filesystem library. I am not sure whether we should invest time into finding a workaround, as I don't expect many of the Slic3r users to hack around with the directory reparse points on Windows.

@bubnikv bubnikv changed the title Do not save profiles Saving profiles into a Windows directory with reparse point fails Mar 14, 2018
@bubnikv bubnikv changed the title Saving profiles into a Windows directory with reparse point fails Saving profiles into a Windows directory with reparse point fails (Boost::filesystem issue) Apr 18, 2018
@blithe74
Copy link
Author

blithe74 commented Apr 18, 2018 via email

@bubnikv
Copy link
Collaborator

bubnikv commented Apr 18, 2018 via email

@blithe74
Copy link
Author

blithe74 commented Apr 18, 2018 via email

@chylek
Copy link

chylek commented Nov 18, 2018

As a workaround you can launch slic3r.exe with the following argument: --datadir="pathWithoutSymlinks"
But if you have non-ASCII characters in that path it will fail again due to charset issues.

@blithe74
Copy link
Author

blithe74 commented Nov 23, 2018 via email

@blithe74
Copy link
Author

blithe74 commented Feb 22, 2019 via email

@bubnikv
Copy link
Collaborator

bubnikv commented Feb 22, 2019

@blithe74 Hello dear!

Fan of cooling of the filament.

It really does not belong to this thread. If you feel you need to discuss this topic, please check the existing issues first, if the topic fits there, please continue the discussion there. Otherwise open a new topic.

@adras
Copy link

adras commented Mar 30, 2020

I just ran into the same issue #3956 . Looking at the date this issue was created I doubt, that the boost guys are going to fix it. Their issues are even older.

@bubnikv
Copy link
Collaborator

bubnikv commented Sep 1, 2020

Fixed with 683af51.

@bubnikv
Copy link
Collaborator

bubnikv commented Sep 1, 2020

Fixed by not canonizing the symbolic links aka reparse points. The reparse points are not processed correctly by boost::filesystem::canonical() on Windows and making the path canonical (replacing symlinks with the path they point to) is not strictly required, therefore the fix does not take any functionality away.

I have tested both the directory symbolic links and directory junctions (mklink /d and mklink /s). Both seem to be processed correctly now by PrusaSlicer if used to point to PrusaSlicer user profile directory. I have also tested both types of these windows symlinks to point to PrusaSlicer/filament directory and it works as well.

The fix will be in the first public PrusaSlicer 2.3.0-alpha. Please let me know whether there is something yet broken in regard to windows symlinks.

@blithe74
Copy link
Author

blithe74 commented Dec 3, 2020 via email

@bubnikv
Copy link
Collaborator

bubnikv commented Dec 4, 2020

@ blithe74

Dear Alexandr.

Please don't mix issues. If you have any issues, please first search for similar ones (for example the support issues), or create a new one. Thank you.

The Prusa Slic3r version 2.3.0.0 beta 1 have some problem (see attached files):

No file attached.

Does your report from yesterday has anything to do with

Saving profiles into a Windows directory with reparse point fails (Boost::filesystem issue) #732
?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants