1#************************************************************************* 2# 3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4# 5# Copyright 2000, 2010 Oracle and/or its affiliates. 6# 7# OpenOffice.org - a multi-platform office productivity suite 8# 9# This file is part of OpenOffice.org. 10# 11# OpenOffice.org is free software: you can redistribute it and/or modify 12# it under the terms of the GNU Lesser General Public License version 3 13# only, as published by the Free Software Foundation. 14# 15# OpenOffice.org is distributed in the hope that it will be useful, 16# but WITHOUT ANY WARRANTY; without even the implied warranty of 17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18# GNU Lesser General Public License version 3 for more details 19# (a copy is included in the LICENSE file that accompanied this code). 20# 21# You should have received a copy of the GNU Lesser General Public License 22# version 3 along with OpenOffice.org. If not, see 23# <http://www.openoffice.org/license.html> 24# for a copy of the LGPLv3 License. 25# 26#************************************************************************* 27 28 29package pre2par::pathanalyzer; 30 31use pre2par::globals; 32 33########################################### 34# Path analyzer 35########################################### 36 37sub get_path_from_fullqualifiedname 38{ 39 my ($longfilenameref) = @_; 40 41 if ( $$longfilenameref =~ /\Q$pre2par::globals::separator\E/ ) # Is there a separator in the path? Otherwise the path is empty. 42 { 43 if ( $$longfilenameref =~ /^\s*(\S.*\S\Q$pre2par::globals::separator\E)(\S.+?\S)/ ) 44 { 45 $$longfilenameref = $1; 46 } 47 } 48 else 49 { 50 $$longfilenameref = ""; # there is no path 51 } 52} 53 54sub make_absolute_filename_to_relative_filename 55{ 56 my ($longfilenameref) = @_; 57 58 if ( $pre2par::globals::isunix ) 59 { 60 if ( $$longfilenameref =~ /^.*\/(\S.+\S?)/ ) 61 { 62 $$longfilenameref = $1; 63 } 64 } 65 66 if ( $pre2par::globals::iswin ) 67 { 68 if ( $$longfilenameref =~ /^.*\\(\S.+\S?)/ ) 69 { 70 $$longfilenameref = $1; 71 } 72 } 73} 74 751; 76