Bug #60965

TYPO3 identifier of file abstraction layer inconsistent

Added by Arno Dudek over 5 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
-- undefined --
Assignee:
-
Category:
File Abstraction Layer (FAL)
Target version:
-
Start date:
2014-08-13
Due date:
% Done:

0%

TYPO3 Version:
6.2
PHP Version:
Tags:
Complexity:
medium
Is Regression:
No
Sprint Focus:

Description

Please don't wonder if you have seen this on stackoverflow first. But I think this here is the better place :)

I'm a little bit confused about the identifier of a FAL driver. I try to write a driver but the delivered identifier from storage is not always consistent. Currently the problem is to hide the _processed_ folder in listing. So I found out, the condition ask for _processed_/. But shouldn't it be /_processed_/ with beginning slash?

So when I fetch the files from my storage I use for all identifiers a beginning and tailing slash:

/my/directory/
/my/directory/file.ext

But when e.g. the file is processing it will be saved in the DB as

_processed_/preview_test122_4f666b3c4b.jpg

not as expected as

/_processed_/preview_test122_4f666b3c4b.jpg

When I remove the beginning slash at fetching, then some functions work, but other not without canonical the path.

How can I found out, when the incoming $identifier of my driver is correct or must be canonicalized? I don't whant to overload the extension with the function canonicalizeAndCheckFileIdentifier()...

using TYPO3 v6.2.4

More debugging:

  1. Deleted the processing directory on storage
  2. do listing
  3. debug "createFolder" function to get returned identifier: -> /_processed_/
  4. debug returned identifier in getProcessingFolder in ResourceStorage.php: -> /_processed_/
    everthing correct so far
  5. do linsting again
  6. debug getProcessingFolder: -> _processed_/
    missing beginning slash

History

#1 Updated by Arno Dudek over 5 years ago

I could solve the problem when canonicalize the identifier at fetching the list, isWithin and getFolderInfoByIdentifier. Perhaps we can avoid canonicalizing in the driver.(?)

#2 Updated by Frans Saris about 5 years ago

  • Sprint Focus set to On Location Sprint

#3 Updated by Ingo Schmitt almost 5 years ago

  • Complexity set to medium

#4 Updated by Michael Oehlhof almost 5 years ago

I can't reproduce this with master.
In Step 6 I get the correct identifier
ResourceStorage.php: -> /_processed_/

#5 Updated by Anja Leichsenring over 4 years ago

  • Sprint Focus changed from On Location Sprint to Remote Sprint

#6 Updated by Markus Klein about 4 years ago

  • Status changed from New to Needs Feedback
  • Sprint Focus deleted (Remote Sprint)

Still an issue?

#7 Updated by Arno Dudek about 4 years ago

Seems to work now. Tested with v4.6.15 and v7.6.0. Get always "/_processed_/".
Thanks!

#8 Updated by Riccardo De Contardi almost 4 years ago

  • Status changed from Needs Feedback to Closed

There have not been other reports about this issue, so I think it is safe to close this for now.

If you think that this is the wrong decision or experience this issue again, then please write to the mailing list typo3.teams.bugs with issue number and an explanation or open a new ticket and add a relation to this ticket number.

Thank you

Also available in: Atom PDF