| Summary: | [efs] symbolic links do not report a proper EFS.ATTRIBUTE_LINK_TARGET | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Tools] Target Management | Reporter: | Martin Oberhuber <mober.at+eclipse> | ||||||||
| Component: | RSE | Assignee: | Martin Oberhuber <mober.at+eclipse> | ||||||||
| Status: | RESOLVED FIXED | QA Contact: | Martin Oberhuber <mober.at+eclipse> | ||||||||
| Severity: | normal | ||||||||||
| Priority: | P3 | CC: | dmcknigh | ||||||||
| Version: | 3.2 | Flags: | dmcknigh:
review+
|
||||||||
| Target Milestone: | 3.2 RC3 | ||||||||||
| Hardware: | PC | ||||||||||
| OS: | Linux | ||||||||||
| Whiteboard: | |||||||||||
| Bug Depends on: | |||||||||||
| Bug Blocks: | 314433 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Martin Oberhuber
Created attachment 170033 [details]
Unittest showing the issue for ssh (committed)
Attached unittest exposes the problem when running with an "ssh" or "dstore" connection profile. I'm committing the unittest right away.
Created attachment 170054 [details]
Patch fixing the issue
Attached patch fixes the issue.
There were two problems:
(1) The quotes which the RSE "classification" String uses are derived from the
UNIX "file" utility and need to look like this:
broken symbolic link to `yyyy'
the code had used incorrect quotes like 'yyyy´ -- I noticed this problem
by chance when working on Linux, since the backquote (´) is not in the
ASCII range 0-127 and was thus incorrectly displayed on UTF-8 encoding.
(2) SSH reports broken links as "existing" but the code expected that broken
links always have exists() report false. I'm not exactly sure what is
correct, and the RSE IRemoteFile API does not give guidance. So for now,
I have made the code more fault tolerant such that EFS always reports
the right thing.
The fix makes the unittest work OK for SSH. DStore seems to have other issues.
Dave, can you review the attached patch? - The patch here will resolve the problem you found on bug 314433, which was due to the incorrect UTF-8 encoding. In other words, I'll need to get this committed first, then I can attach a proper patch on bug 314433. I think the patch is missing a call to set the last modified time in the case of no symbolic link. I mean this line: info.setLastModified(remoteFile.getLastModified()); Created attachment 170067 [details]
patch v2
Good catch, thanks! Can you please review again?
(In reply to comment #5) > Created an attachment (id=170067) [details] > patch v2 > > Good catch, thanks! Can you please review again? Looks better now. Released > I20100526 - thanks for the review. |