Details
-
Type: Bug
-
Status: Closed (View Workflow)
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.5.8
-
Fix Version/s: None
-
Component/s: core
-
Labels:None
Description
The following test program should output
2. Mose 1:1
1. Mose 2:3
1. Mose 3:4
(2. Mose == Exodus, 1. Mose == Genesis)
but it prints:
2. Mose 1:1
Offenbarung 2:3
Offenbarung 3:4
(Offenbarung == Revelation)
It seems like parsing a reference doesn't work in a different locale than the configured default locale.
------------------
#include <versekey.h>
#include <listkey.h>
#include <localemgr.h>
#include <iostream>
using namespace sword;
using namespace std;
int main(int, char**) {
LocaleMgr::getSystemLocaleMgr()->setDefaultLocaleName("fr");
VerseKey k;
k.setLocale("de");
ListKey lk = k.ParseVerseList("Exodus 1:1; 2:3; 3:4", "Genesis", true);
for (int i = 0; i < lk.Count();++i)
{ std::cout << lk.getElement(i)->getRangeText() << std::endl; }}