mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-08-11 09:13:57 -04:00
Use std::make_unique for cleaner code
This commit is contained in:
parent
e520c70025
commit
ea522df226
@ -75,7 +75,7 @@
|
||||
"name": "sqlite_extension",
|
||||
"headers": "calibre/utils/cpp_binding.h",
|
||||
"sources": "calibre/db/sqlite_extension.cpp",
|
||||
"needs_c++11": true,
|
||||
"needs_c++14": true,
|
||||
"libraries": "icudata icui18n icuuc icuio stemmer",
|
||||
"windows_libraries": "icudt icuin icuuc icuio libstemmer",
|
||||
"lib_dirs": "!icu_lib_dirs",
|
||||
|
@ -246,8 +246,7 @@ private:
|
||||
if (!lang[0]) lang = current_ui_language.c_str();
|
||||
auto ans = stemmers.find(lang);
|
||||
if (ans == stemmers.end()) {
|
||||
if (stem_words) stemmers[lang] = StemmerPtr(new Stemmer(lang));
|
||||
else stemmers[lang] = StemmerPtr(new Stemmer());
|
||||
stemmers[lang] = stem_words ? std::make_unique<Stemmer>(lang) : std::make_unique<Stemmer>();
|
||||
ans = stemmers.find(lang);
|
||||
}
|
||||
return ans->second;
|
||||
@ -375,10 +374,11 @@ _tok_create(void *sqlite3, const char **azArg, int nArg, Fts5Tokenizer **ppOut,
|
||||
int rc = SQLITE_OK;
|
||||
try {
|
||||
Tokenizer *p = new Tokenizer(azArg, nArg, stem_words);
|
||||
*ppOut = reinterpret_cast<Fts5Tokenizer *>(p);
|
||||
if (p->constructor_error != SQLITE_OK) {
|
||||
rc = p->constructor_error;
|
||||
delete p;
|
||||
} else {
|
||||
*ppOut = reinterpret_cast<Fts5Tokenizer *>(p);
|
||||
}
|
||||
} catch (std::bad_alloc const&) {
|
||||
return SQLITE_NOMEM;
|
||||
|
Loading…
x
Reference in New Issue
Block a user