summaryrefslogtreecommitdiff
path: root/registry/source/regimpl.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'registry/source/regimpl.cxx')
-rw-r--r--registry/source/regimpl.cxx14
1 files changed, 7 insertions, 7 deletions
diff --git a/registry/source/regimpl.cxx b/registry/source/regimpl.cxx
index 7a32772b2f38..0d69c64cd000 100644
--- a/registry/source/regimpl.cxx
+++ b/registry/source/regimpl.cxx
@@ -750,11 +750,11 @@ RegError ORegistry::deleteKey(RegKeyHandle hKey, std::u16string_view keyName)
return eraseKey(m_openKeyTable[ROOT], sFullKeyName);
}
-RegError ORegistry::eraseKey(ORegKey* pKey, const OUString& keyName)
+RegError ORegistry::eraseKey(ORegKey* pKey, std::u16string_view keyName)
{
RegError _ret = RegError::NO_ERROR;
- if (keyName.isEmpty())
+ if (keyName.empty())
{
return RegError::INVALID_KEYNAME;
}
@@ -762,18 +762,18 @@ RegError ORegistry::eraseKey(ORegKey* pKey, const OUString& keyName)
OUString sFullKeyName(pKey->getName());
OUString sFullPath(sFullKeyName);
OUString sRelativKey;
- sal_Int32 lastIndex = keyName.lastIndexOf('/');
+ size_t lastIndex = keyName.rfind('/');
- if (lastIndex >= 0)
+ if (lastIndex != std::u16string_view::npos)
{
- sRelativKey += keyName.subView(lastIndex + 1);
+ sRelativKey += keyName.substr(lastIndex + 1);
if (sFullKeyName.getLength() > 1)
sFullKeyName += keyName;
else
- sFullKeyName += keyName.subView(1);
+ sFullKeyName += keyName.substr(1);
- sFullPath = sFullKeyName.copy(0, keyName.lastIndexOf('/') + 1);
+ sFullPath = sFullKeyName.copy(0, keyName.rfind('/') + 1);
} else
{
if (sFullKeyName.getLength() > 1)