summaryrefslogtreecommitdiff
path: root/cpp/src/qpid
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid')
-rw-r--r--cpp/src/qpid/acl/AclPlugin.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/cpp/src/qpid/acl/AclPlugin.cpp b/cpp/src/qpid/acl/AclPlugin.cpp
index ffba8d44cf..7310139041 100644
--- a/cpp/src/qpid/acl/AclPlugin.cpp
+++ b/cpp/src/qpid/acl/AclPlugin.cpp
@@ -61,9 +61,17 @@ struct AclPlugin : public Plugin {
}
if (acl) throw Exception("ACL plugin cannot be initialized twice in one process.");
- std::ostringstream oss;
- oss << b.getDataDir().getPath() << "/" << values.aclFile;
- values.aclFile = oss.str();
+
+ if (values.aclFile.at(0) == '/')
+ {
+ values.aclFile = values.aclFile;
+ }
+ else
+ {
+ std::ostringstream oss;
+ oss << b.getDataDir().getPath() << "/" << values.aclFile;
+ values.aclFile = oss.str();
+ }
acl = new Acl(values, b);
b.setAcl(acl.get());
@@ -89,5 +97,5 @@ static AclPlugin instance; // Static initialization.
// For test purposes.
boost::intrusive_ptr<Acl> getGlobalAcl() { return instance.acl; }
-
+
}} // namespace qpid::acl