aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--bin/sisu67
-rw-r--r--data/doc/sisu/CHANGELOG_v52
-rw-r--r--data/doc/sisu/CHANGELOG_v62
-rw-r--r--lib/sisu/v5/hub.rb23
-rw-r--r--lib/sisu/v6/hub.rb23
5 files changed, 83 insertions, 34 deletions
diff --git a/bin/sisu b/bin/sisu
index ffc5a8a5..44263adc 100644
--- a/bin/sisu
+++ b/bin/sisu
@@ -225,40 +225,47 @@ class Orient
def control
require "#{sisu_is[:path_lib]}/hub"
sisu_called_from_directory
- if get_processing_info.processing_files.length > 0
- get_processing_info.processing_files.each_pair do |markup_dir,markup_file|
- begin
- $sisu_document_markup_directory=markup_dir.gsub(/\/$/,'')
- argv_sub=get_processing_info.command_line_modifiers + markup_file
- if FileTest.directory?(markup_dir)
- system("cd #{markup_dir}")
- Dir.chdir(markup_dir)
- $sisu_document_markup_directory_base_fixed_path=
- Dir.pwd.gsub(/\/(?:#{language_list.regex})$/,'')
- SiSU::HubMaster.new(argv_sub,sisu_called_from_directory)
- elsif markup_dir =~/https?:/
- markup_file.each do |mf|
- (FileTest.file?(mf)) \
- ? (puts 'requested remote file already exists in current directory ' \
- + Dir.pwd + ' using ' + mf)
- : (system("wget #{markup_dir}/#{mf}"))
+ begin
+ if get_processing_info.processing_files.length > 0
+ get_processing_info.processing_files.each_pair do |markup_dir,markup_file|
+ begin
+ $sisu_document_markup_directory=markup_dir.gsub(/\/$/,'')
+ argv_sub=get_processing_info.command_line_modifiers + markup_file
+ if FileTest.directory?(markup_dir)
+ system("cd #{markup_dir}")
+ Dir.chdir(markup_dir)
+ $sisu_document_markup_directory_base_fixed_path=
+ Dir.pwd.gsub(/\/(?:#{language_list.regex})$/,'')
+ SiSU::HubMaster.new(argv_sub,sisu_called_from_directory)
+ elsif markup_dir =~/https?:/
+ markup_file.each do |mf|
+ (FileTest.file?(mf)) \
+ ? (puts 'requested remote file already exists in current directory ' \
+ + Dir.pwd + ' using ' + mf)
+ : (system("wget #{markup_dir}/#{mf}"))
+ end
+ $sisu_document_markup_directory_base_fixed_path=
+ Dir.pwd.gsub(/\/(?:#{language_list.regex})$/,'')
+ argv_sub=command_line_modifiers + markup_file
+ SiSU::HubMaster.new(argv_sub,sisu_called_from_directory)
+ else p "Error directory specified #{markup_dir} not found"
end
- $sisu_document_markup_directory_base_fixed_path=
- Dir.pwd.gsub(/\/(?:#{language_list.regex})$/,'')
- argv_sub=command_line_modifiers + markup_file
- SiSU::HubMaster.new(argv_sub,sisu_called_from_directory)
- else p "Error directory specified #{markup_dir} not found"
+ ensure
+ Dir.chdir(sisu_called_from_directory)
+ system("cd #{sisu_called_from_directory}")
end
- ensure
- Dir.chdir(sisu_called_from_directory)
- system("cd #{sisu_called_from_directory}")
end
+ else
+ $sisu_document_markup_directory=Dir.pwd.gsub(/\/$/,'')
+ $sisu_document_markup_directory_base_fixed_path=
+ Dir.pwd.gsub(/(^|\/)(?:#{language_list.regex})$/,'')
+ SiSU::HubMaster.new(processing.argv,sisu_called_from_directory)
end
- else
- $sisu_document_markup_directory=Dir.pwd.gsub(/\/$/,'')
- $sisu_document_markup_directory_base_fixed_path=
- Dir.pwd.gsub(/(^|\/)(?:#{language_list.regex})$/,'')
- SiSU::HubMaster.new(processing.argv,sisu_called_from_directory)
+ rescue
+ ensure
+ SiSU::HubClose.new(sisu_called_from_directory)
+ Dir.chdir(sisu_called_from_directory)
+ system("cd #{sisu_called_from_directory}")
end
end
end
diff --git a/data/doc/sisu/CHANGELOG_v5 b/data/doc/sisu/CHANGELOG_v5
index a1f293e9..ea3afa14 100644
--- a/data/doc/sisu/CHANGELOG_v5
+++ b/data/doc/sisu/CHANGELOG_v5
@@ -38,6 +38,8 @@ http://www.jus.uio.no/sisu/pkg/src/sisu_5.5.2.orig.tar.xz
sisu_5.5.2.orig.tar.xz
sisu_5.5.2-1.dsc
+* bin/sisu, hub, hub close (ensure), remove /tmp/ processing dir
+
%% 5.5.1.orig.tar.xz (2014-07-15:28/2)
http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=log;h=refs/tags/sisu_5.5.1
http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=log;h=refs/tags/debian/sisu_5.5.1-1
diff --git a/data/doc/sisu/CHANGELOG_v6 b/data/doc/sisu/CHANGELOG_v6
index 0c6b7311..41165ea5 100644
--- a/data/doc/sisu/CHANGELOG_v6
+++ b/data/doc/sisu/CHANGELOG_v6
@@ -28,6 +28,8 @@ http://www.jus.uio.no/sisu/pkg/src/sisu_6.1.2.orig.tar.xz
sisu_6.1.2.orig.tar.xz
sisu_6.1.2-1.dsc
+* bin/sisu, hub, hub close (ensure), remove /tmp/ processing dir
+
%% 6.1.1.orig.tar.xz (2014-07-15:28/2)
http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=log;h=refs/tags/sisu_6.1.1
http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=log;h=refs/tags/debian/sisu_6.1.1-1
diff --git a/lib/sisu/v5/hub.rb b/lib/sisu/v5/hub.rb
index 6a0f4640..510e2092 100644
--- a/lib/sisu/v5/hub.rb
+++ b/lib/sisu/v5/hub.rb
@@ -93,6 +93,22 @@ module SiSU
end
end
end
+ class HubClose
+ def initialize(call_path)
+ begin
+ @env=SiSU_Env::InfoEnv.new
+ rescue
+ ensure
+ if FileTest.directory?(@env.processing_path.processing) \
+ and @env.processing_path.processing_base_tmp =~/^\/tmp\/\S+/
+ FileUtils::cd(@env.processing_path.processing_base_tmp) do
+ FileUtils::rm_rf('.')
+ end
+ end
+ Dir.chdir(call_path)
+ end
+ end
+ end
class OptionLoopFiles
attr_reader :opt
def initialize(opt)
@@ -111,6 +127,7 @@ module SiSU
@opt.pth=@opt.f_pths[i][:pth]
@opt.lng=@opt.f_pths[i][:lng]
Dir.chdir(@opt.f_pth[:pth]) #watch
+ SiSU_Env::FilenameLanguageCodeInsert.new(@opt,@opt.lng).language_code_insert # ... track
@env=SiSU_Env::InfoEnv.new(fno)
yield
end
@@ -784,8 +801,10 @@ module SiSU
and @@env.user \
and FileTest.directory?(@@env.processing_path.processing) \
and @@env.processing_path.processing =~/#{@@env.user}$/ #clean temporary processing directory of content as is located in public area
- FileUtils::cd(@@env.processing_path.processing_base_tmp) do
- FileUtils::rm_rf(@@env.user) unless @opt.act[:maintenance][:set] ==:on
+ if @@env.processing_path.processing_base_tmp =~/^\/tmp\/\S+/
+ FileUtils::cd(@@env.processing_path.processing_base_tmp) do
+ FileUtils::rm_rf('.') unless @opt.act[:maintenance][:set] ==:on
+ end
end
end
elsif action_on_file_ == :true \
diff --git a/lib/sisu/v6/hub.rb b/lib/sisu/v6/hub.rb
index 1818a714..e061ee46 100644
--- a/lib/sisu/v6/hub.rb
+++ b/lib/sisu/v6/hub.rb
@@ -93,6 +93,22 @@ module SiSU
end
end
end
+ class HubClose
+ def initialize(call_path)
+ begin
+ @env=SiSU_Env::InfoEnv.new
+ rescue
+ ensure
+ if FileTest.directory?(@env.processing_path.processing) \
+ and @env.processing_path.processing_base_tmp =~/^\/tmp\/\S+/
+ FileUtils::cd(@env.processing_path.processing_base_tmp) do
+ FileUtils::rm_rf('.')
+ end
+ end
+ Dir.chdir(call_path)
+ end
+ end
+ end
class OptionLoopFiles
attr_reader :opt
def initialize(opt)
@@ -111,6 +127,7 @@ module SiSU
@opt.pth=@opt.f_pths[i][:pth]
@opt.lng=@opt.f_pths[i][:lng]
Dir.chdir(@opt.f_pth[:pth]) #watch
+ SiSU_Env::FilenameLanguageCodeInsert.new(@opt,@opt.lng).language_code_insert # ... track
@env=SiSU_Env::InfoEnv.new(fno)
yield
end
@@ -784,8 +801,10 @@ module SiSU
and @@env.user \
and FileTest.directory?(@@env.processing_path.processing) \
and @@env.processing_path.processing =~/#{@@env.user}$/ #clean temporary processing directory of content as is located in public area
- FileUtils::cd(@@env.processing_path.processing_base_tmp) do
- FileUtils::rm_rf(@@env.user) unless @opt.act[:maintenance][:set] ==:on
+ if @@env.processing_path.processing_base_tmp =~/^\/tmp\/\S+/
+ FileUtils::cd(@@env.processing_path.processing_base_tmp) do
+ FileUtils::rm_rf('.') unless @opt.act[:maintenance][:set] ==:on
+ end
end
end
elsif action_on_file_ == :true \