~ubuntu-branches/ubuntu/oneiric/enigmail/oneiric-updates

« back to all changes in this revision

Viewing changes to config/fastcwd.pl

  • Committer: Package Import Robot
  • Author(s): Chris Coulson
  • Date: 2012-01-30 19:02:40 UTC
  • mfrom: (0.12.8)
  • Revision ID: package-import@ubuntu.com-20120130190240-bjofbfbz2klwujd2
Tags: 2:1.3.5-0ubuntu0.11.10.1
* New upstream release v1.3.5
  - LP: #923372

* Fix LP: #886781 - build with --enable-chrome-format=omni, as this is
  what the chrome.manifest assumes (fixes chrome registration issues
  breaking non-English locales)
  - update debian/rules

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!perl5
2
 
#
3
 
# ***** BEGIN LICENSE BLOCK *****
4
 
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
5
 
#
6
 
# The contents of this file are subject to the Mozilla Public License Version
7
 
# 1.1 (the "License"); you may not use this file except in compliance with
8
 
# the License. You may obtain a copy of the License at
9
 
# http://www.mozilla.org/MPL/
10
 
#
11
 
# Software distributed under the License is distributed on an "AS IS" basis,
12
 
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13
 
# for the specific language governing rights and limitations under the
14
 
# License.
15
 
#
16
 
# The Original Code is mozilla.org code.
17
 
#
18
 
# The Initial Developer of the Original Code is
19
 
# Netscape Communications Corporation.
20
 
# Portions created by the Initial Developer are Copyright (C) 1998
21
 
# the Initial Developer. All Rights Reserved.
22
 
#
23
 
# Contributor(s):
24
 
#
25
 
# Alternatively, the contents of this file may be used under the terms of
26
 
# either of the GNU General Public License Version 2 or later (the "GPL"),
27
 
# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
28
 
# in which case the provisions of the GPL or the LGPL are applicable instead
29
 
# of those above. If you wish to allow use of your version of this file only
30
 
# under the terms of either the GPL or the LGPL, and not to allow others to
31
 
# use your version of this file under the terms of the MPL, indicate your
32
 
# decision by deleting the provisions above and replace them with the notice
33
 
# and other provisions required by the GPL or the LGPL. If you do not delete
34
 
# the provisions above, a recipient may use your version of this file under
35
 
# the terms of any one of the MPL, the GPL or the LGPL.
36
 
#
37
 
# ***** END LICENSE BLOCK *****
38
 
 
39
 
sub fastcwd {
40
 
        local($odev, $oino, $cdev, $cino, $tdev, $tino);
41
 
        local(@path, $path);
42
 
        local(*DIR);
43
 
 
44
 
        ($cdev, $cino) = stat('.');
45
 
        for (;;) {
46
 
                ($odev, $oino) = ($cdev, $cino);
47
 
                chdir('..');
48
 
                ($cdev, $cino) = stat('.');
49
 
                last if $odev == $cdev && $oino == $cino;
50
 
                opendir(DIR, '.');
51
 
                for (;;) {
52
 
                        $_ = readdir(DIR);
53
 
                        next if $_ eq '.';
54
 
                        next if $_ eq '..';
55
 
 
56
 
                        last unless $_;
57
 
                        ($tdev, $tino) = lstat($_);
58
 
                        last unless $tdev != $odev || $tino != $oino;
59
 
                }
60
 
                closedir(DIR);
61
 
                unshift(@path, $_);
62
 
        }
63
 
        chdir($path = '/' . join('/', @path));
64
 
        $path;
65
 
}
66
 
1;