HomePhabricator

Eina: sanitize eina_path output on Windows

Authored by vtorri on Wed, Nov 10, 4:51 AM.

Description

Eina: sanitize eina_path output on Windows

Summary:

  • remove additional \ character
  • use only / as path separator

Test Plan:
compilation and run

test program :

{
        elm_app_bin_dir_get();
        printf("%s\n", eina_vpath_resolve("(:tmp:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:home:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.desktop:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.documents:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.downloads:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.music:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.pictures:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.public:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.templates:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.videos:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.data:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.config:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.cache:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.run:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.tmp:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.dir:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.bin:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.lib:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.data:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.locale:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.config:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.local:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.tmp:)/foo"));
    }

before patch :

C:\Documents\msys2\tmp/foo
C:\Users\vincent.torri/foo
C:\Users\vincent.torri\Desktop/foo
C:\Users\vincent.torri\Documents/foo
C:\Users\vincent.torri\Downloads/foo
C:\Users\vincent.torri\Music/foo
C:\Users\vincent.torri\Pictures/foo
C:\Users\Public\/foo
C:\Users\vincent.torri\AppData\Roaming\Microsoft\Windows\Templates/foo
C:\Users\vincent.torri\Videos/foo
C:\Users\vincent.torri\AppData\Local\/foo
C:\Users\vincent.torri\AppData\Roaming\/foo
C:\Users\vincent.torri\AppData\Local\/foo
C:\Users\vincent.torri\AppData\Roaming/foo
C:\Users\vincent.torri\AppData\Local\Temp/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/lib/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:\Users\vincent.torri\AppData\Roaming\/entice/foo
C:\Users\vincent.torri\AppData\Local\/entice/foo
C:\Users\vincent.torri\AppData\Local\Temp/entice/foo

after patch

C:/Documents/msys2/tmp/foo
C:/Users/vincent.torri/foo
C:/Users/vincent.torri/Desktop/foo
C:/Users/vincent.torri/Documents/foo
C:/Users/vincent.torri/Downloads/foo
C:/Users/vincent.torri/Music/foo
C:/Users/vincent.torri/Pictures/foo
C:/Users/Public/foo
C:/Users/vincent.torri/AppData/Roaming/Microsoft/Windows/Templates/foo
C:/Users/vincent.torri/Videos/foo
C:/Users/vincent.torri/AppData/Local/foo
C:/Users/vincent.torri/AppData/Roaming/foo
C:/Users/vincent.torri/AppData/Local/foo
C:/Users/vincent.torri/AppData/Roaming/foo
C:/Users/vincent.torri/AppData/Local/Temp/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/lib/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:/Users/vincent.torri/AppData/Roaming/entice/foo
C:/Users/vincent.torri/AppData/Local/entice/foo
C:/Users/vincent.torri/AppData/Local/Temp/entice/foo

Reviewers: raster

Reviewed By: raster

Subscribers: cedric, reviewers, committers

Tags: efl

Differential Revision: https://phab.enlightenment.org/D12306

Details

Committed
rasterWed, Nov 10, 4:51 AM
Reviewer
raster
Differential Revision
D12306: Eina: sanitize eina_path output on Windows
Parents
rEFL173c9cdbe161: eina vpath - fix trailing extra / after home
Branches
Unknown
Tags
Unknown