Filename | /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/pathanalyzer.pm |
Statements | Executed 454890 statements in 2.38s |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
50033 | 6 | 6 | 1.10s | 1.62s | get_path_from_fullqualifiedname | installer::pathanalyzer::
156366 | 3 | 1 | 556ms | 556ms | CORE:match (opcode) | installer::pathanalyzer::
56300 | 7 | 5 | 465ms | 606ms | make_absolute_filename_to_relative_filename | installer::pathanalyzer::
100066 | 2 | 1 | 109ms | 109ms | CORE:regcomp (opcode) | installer::pathanalyzer::
1 | 1 | 1 | 318µs | 321µs | BEGIN@30 | installer::pathanalyzer::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
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 | package installer::pathanalyzer; | ||||
29 | |||||
30 | 2 | 383µs | 2 | 324µs | # spent 321µs (318+3) within installer::pathanalyzer::BEGIN@30 which was called:
# once (318µs+3µs) by installer::systemactions::BEGIN@35 at line 30 # spent 321µs making 1 call to installer::pathanalyzer::BEGIN@30
# spent 3µs making 1 call to UNIVERSAL::import |
31 | |||||
32 | ########################################### | ||||
33 | # Path analyzer | ||||
34 | ########################################### | ||||
35 | |||||
36 | sub get_path_from_fullqualifiedname | ||||
37 | # spent 1.62s (1.10+524ms) within installer::pathanalyzer::get_path_from_fullqualifiedname which was called 50033 times, avg 32µs/call:
# 15895 times (258ms+97.8ms) by installer::scriptitems::collect_directories_from_filesarray at line 1736 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/scriptitems.pm, avg 22µs/call
# 15883 times (289ms+135ms) by installer::windows::file::get_file_component_name at line 243 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/file.pm, avg 27µs/call
# 9648 times (398ms+233ms) by installer::windows::component::get_file_component_directory at line 126 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/component.pm, avg 65µs/call
# 8601 times (151ms+57.9ms) by installer::archivefiles::resolving_archive_flag at line 359 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/archivefiles.pm, avg 24µs/call
# 5 times (158µs+76µs) by installer::windows::mergemodule::merge_mergemodules_into_msi_database at line 354 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/mergemodule.pm, avg 47µs/call
# once (33µs+15µs) by installer::systemactions::create_directory_next_to_directory at line 902 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/systemactions.pm | ||||
38 | 100066 | 939ms | my ($longfilenameref) = @_; | ||
39 | |||||
40 | 50033 | 615ms | 100066 | 253ms | if ( $$longfilenameref =~ /\Q$installer::globals::separator\E/ ) # Is there a separator in the path? Otherwise the path is empty. # spent 212ms making 50033 calls to installer::pathanalyzer::CORE:match, avg 4µs/call
# spent 41.0ms making 50033 calls to installer::pathanalyzer::CORE:regcomp, avg 820ns/call |
41 | { | ||||
42 | 50033 | 115ms | 100066 | 271ms | if ( $$longfilenameref =~ /^\s*(.*\Q$installer::globals::separator\E)(.+)/ ) # spent 202ms making 50033 calls to installer::pathanalyzer::CORE:match, avg 4µs/call
# spent 68.5ms making 50033 calls to installer::pathanalyzer::CORE:regcomp, avg 1µs/call |
43 | { | ||||
44 | $$longfilenameref = $1; | ||||
45 | } | ||||
46 | } | ||||
47 | else | ||||
48 | { | ||||
49 | $$longfilenameref = ""; # there is no path | ||||
50 | } | ||||
51 | } | ||||
52 | |||||
53 | sub make_absolute_filename_to_relative_filename | ||||
54 | # spent 606ms (465+141) within installer::pathanalyzer::make_absolute_filename_to_relative_filename which was called 56300 times, avg 11µs/call:
# 15921 times (139ms+41.5ms) by installer::windows::msiglobal::save_packorder at line 405 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/msiglobal.pm, avg 11µs/call
# 15888 times (131ms+42.7ms) by installer::windows::file::generate_unique_filename_for_filetable at line 394 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/file.pm, avg 11µs/call
# 15888 times (125ms+36.6ms) by installer::windows::file::generate_filename_for_filetable at line 488 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/file.pm, avg 10µs/call
# 7512 times (55.0ms+13.1ms) by installer::scriptitems::get_Destination_Directory_For_Item_From_Directorylist at line 890 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/scriptitems.pm, avg 9µs/call
# 981 times (12.3ms+6.11ms) by installer::windows::idtglobal::prepare_language_idt_directory at line 805 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/idtglobal.pm, avg 19µs/call
# 109 times (1.98ms+1.43ms) by installer::windows::idtglobal::prepare_language_idt_directory at line 794 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/idtglobal.pm, avg 31µs/call
# once (21µs+14µs) by installer::windows::icon::create_icon_table at line 47 of /cygdrive/c/lo/libo-master/instsetoo_native/util/C:/lo/libo-master/solenv/bin/modules/installer/windows/icon.pm | ||||
55 | 168900 | 309ms | my ($longfilenameref) = @_; | ||
56 | |||||
57 | if ( $installer::globals::isunix ) | ||||
58 | { | ||||
59 | if ( $$longfilenameref =~ /^.*\/(\S.+\S?)/ ) | ||||
60 | { | ||||
61 | $$longfilenameref = $1; | ||||
62 | } | ||||
63 | } | ||||
64 | |||||
65 | 56300 | 365ms | if ( $installer::globals::iswin ) | ||
66 | { | ||||
67 | # Either '/' or '\'. It would be possible to use $installer::globals::separator. | ||||
68 | 29555 | 36.1ms | 56300 | 141ms | if ( $$longfilenameref =~ /^.*[\/\\](\S.+\S?)/ ) # spent 141ms making 56300 calls to installer::pathanalyzer::CORE:match, avg 3µs/call |
69 | { | ||||
70 | $$longfilenameref = $1; | ||||
71 | } | ||||
72 | } | ||||
73 | } | ||||
74 | |||||
75 | 1 | 7µs | 1; | ||
# spent 556ms within installer::pathanalyzer::CORE:match which was called 156366 times, avg 4µs/call:
# 56300 times (141ms+0s) by installer::pathanalyzer::make_absolute_filename_to_relative_filename at line 68, avg 3µs/call
# 50033 times (212ms+0s) by installer::pathanalyzer::get_path_from_fullqualifiedname at line 40, avg 4µs/call
# 50033 times (202ms+0s) by installer::pathanalyzer::get_path_from_fullqualifiedname at line 42, avg 4µs/call | |||||
# spent 109ms within installer::pathanalyzer::CORE:regcomp which was called 100066 times, avg 1µs/call:
# 50033 times (68.5ms+0s) by installer::pathanalyzer::get_path_from_fullqualifiedname at line 42, avg 1µs/call
# 50033 times (41.0ms+0s) by installer::pathanalyzer::get_path_from_fullqualifiedname at line 40, avg 820ns/call |