aboutsummaryrefslogtreecommitdiff
path: root/extmod/modbtree.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-06-18 01:31:57 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-06-18 01:31:57 +0300
commit080137961daef9a1b0fe1f37f54a820842728442 (patch)
treef4d592a963747eb5cac15750fd6c15d9906b1dc6 /extmod/modbtree.c
parente9739e33156921ec111d60c6a84a1355a195a875 (diff)
extmod/modbtree: open(): Support "in-memory" database with filename=None.
It's not really in-memory though, just uses anonymous temporary file on disk.
Diffstat (limited to 'extmod/modbtree.c')
-rw-r--r--extmod/modbtree.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/extmod/modbtree.c b/extmod/modbtree.c
index 345b4d161..955dafa70 100644
--- a/extmod/modbtree.c
+++ b/extmod/modbtree.c
@@ -244,7 +244,10 @@ STATIC mp_obj_t mod_btree_open(size_t n_args, const mp_obj_t *pos_args, mp_map_t
{ MP_QSTR_server_side, MP_ARG_KW_ONLY | MP_ARG_BOOL, {.u_bool = false} },
};
- const char *fname = mp_obj_str_get_str(pos_args[0]);
+ const char *fname = NULL;
+ if (pos_args[0] != mp_const_none) {
+ fname = mp_obj_str_get_str(pos_args[0]);
+ }
struct {
mp_arg_val_t server_side;