diff --git a/lib/emulator/logging.rb b/lib/emulator/logging.rb index 3949071..5b90b3c 100644 --- a/lib/emulator/logging.rb +++ b/lib/emulator/logging.rb @@ -16,7 +16,7 @@ module OssEmulator # Log.fatal("something", 'red') class Log - LOG_DEFAULT_DIR = "../log" + LOG_DEFAULT_DIR = "log" LOG_DEFAULT_FILE = "#{LOG_DEFAULT_DIR}/emulator.log" LOG_TEST_FILE = "#{LOG_DEFAULT_DIR}/test.log" LOG_ALIYUN_SDK_FILE = "#{LOG_DEFAULT_DIR}/aliyun_sdk.log" diff --git a/lib/emulator/server.rb b/lib/emulator/server.rb index a05d8e7..83b38ee 100644 --- a/lib/emulator/server.rb +++ b/lib/emulator/server.rb @@ -193,7 +193,7 @@ def initialize(address, port, hostname, ssl_cert_path, ssl_key_path, extra_optio ) rescue webrick_config.merge!( - :Logger => WEBrick::Log.new(nil), + :Logger => WEBrick::Log.new(File.open(File::NULL, 'w')), :AccessLog => [] ) end diff --git a/lib/emulator/util.rb b/lib/emulator/util.rb index 9f8c021..7bcbd9c 100644 --- a/lib/emulator/util.rb +++ b/lib/emulator/util.rb @@ -60,24 +60,22 @@ def self.valid_object_name(name) def self.get_bucket_list_objects(lbr, req) marker = req.query["marker"] ? req.query["marker"].to_s : nil marker_found = (marker==nil || marker=="") ? true : false - prefix = req.query["prefix"] ? req.query["prefix"].to_s : nil - prefix = nil if prefix=="" + prefix = req.query["prefix"] ? req.query["prefix"].to_s : "" + max_keys = req.query["max-keys"] ? req.query["max-keys"].to_i : 100 max_keys = max_keys>1000 ? 1000 : max_keys delimiter = req.query["delimiter"] ? req.query["delimiter"].to_s : nil delimiter = nil if delimiter=="" if delimiter - if prefix - base_prefix = prefix - else - base_prefix = "" - end + base_prefix = prefix prefix_offset = base_prefix.length end bucket_path = File.join(Config.store, req.bucket, '/') - find_root_folder = bucket_path + + + find_root_folder = File.join(Config.store, req.bucket, prefix, '/') object_list = [] common_prefix_list = [] is_truncated = false