File: ExtractingFilePath.h

package info (click to toggle)
lzma 24.08%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 6,472 kB
  • sloc: cpp: 78,089; ansic: 26,903; asm: 4,195; cs: 3,846; java: 3,077; makefile: 1,010; sh: 74
file content (31 lines) | stat: -rw-r--r-- 1,084 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// ExtractingFilePath.h

#ifndef ZIP7_INC_EXTRACTING_FILE_PATH_H
#define ZIP7_INC_EXTRACTING_FILE_PATH_H

#include "../../../Common/MyString.h"

// #ifdef _WIN32
void Correct_AltStream_Name(UString &s);
// #endif

// replaces unsuported characters, and replaces "." , ".." and "" to "[]"
UString Get_Correct_FsFile_Name(const UString &name);

/*
  Correct_FsPath() corrects path parts to prepare it for File System operations.
  It also corrects empty path parts like "\\\\":
    - frontal empty path parts : it removes them or changes them to "_"
    - another empty path parts : it removes them
  if (absIsAllowed && path is absolute)  : it removes empty path parts after start absolute path prefix marker
  else
  {
    if (!keepAndReplaceEmptyPrefixes) : it removes empty path parts
    if ( keepAndReplaceEmptyPrefixes) : it changes each empty frontal path part to "_"
  }
*/
void Correct_FsPath(bool absIsAllowed, bool keepAndReplaceEmptyPrefixes, UStringVector &parts, bool isDir);

UString MakePathFromParts(const UStringVector &parts);

#endif