aboutsummaryrefslogtreecommitdiff
path: root/src/vdbemem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vdbemem.c')
-rw-r--r--src/vdbemem.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vdbemem.c b/src/vdbemem.c
index f08671f24..37113b90d 100644
--- a/src/vdbemem.c
+++ b/src/vdbemem.c
@@ -256,12 +256,14 @@ double sqlite3VdbeRealValue(Mem *pMem){
}else if( pMem->flags & MEM_Int ){
return (double)pMem->i;
}else if( pMem->flags & (MEM_Str|MEM_Blob) ){
+ double val = 0.0;
if( sqlite3VdbeChangeEncoding(pMem, SQLITE_UTF8)
|| sqlite3VdbeMemNulTerminate(pMem) ){
return SQLITE_NOMEM;
}
assert( pMem->z );
- return sqlite3AtoF(pMem->z, 0);
+ sqlite3AtoF(pMem->z, &val);
+ return val;
}else{
return 0.0;
}
@@ -406,6 +408,7 @@ int sqlite3VdbeMemSetStr(
switch( enc ){
case 0:
pMem->flags |= MEM_Blob;
+ pMem->enc = SQLITE_UTF8;
break;
case SQLITE_UTF8: