nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
compiler: handle multi-iterators
[nit.git]
/
lib
/
mongodb
/
mongodb.nit
diff --git
a/lib/mongodb/mongodb.nit
b/lib/mongodb/mongodb.nit
index
db83acd
..
1e9b9bd
100644
(file)
--- a/
lib/mongodb/mongodb.nit
+++ b/
lib/mongodb/mongodb.nit
@@
-256,6
+256,7
@@
class MongoClient
assert is_alive
var res = new Array[String]
var nas = native.database_names
assert is_alive
var res = new Array[String]
var nas = native.database_names
+ if nas == null then return res
var i = 0
var name = nas[i]
while not name.address_is_null do
var i = 0
var name = nas[i]
while not name.address_is_null do
@@
-360,6
+361,7
@@
class MongoDb
assert is_alive
var res = new Array[String]
var nas = native.collection_names
assert is_alive
var res = new Array[String]
var nas = native.collection_names
+ if nas == null then return res
var i = 0
var name = nas[i]
while not name.address_is_null do
var i = 0
var name = nas[i]
while not name.address_is_null do
@@
-599,6
+601,7
@@
class MongoCollection
fun find(query: JsonObject): nullable JsonObject do
assert is_alive
var c = native.find(query.to_bson.native)
fun find(query: JsonObject): nullable JsonObject do
assert is_alive
var c = native.find(query.to_bson.native)
+ assert is_alive # FIXME used to avoid segfault (so `self` isn't garbage collected to soon)
if c == null then return null
var cursor = new MongoCursor(c)
if cursor.is_ok then
if c == null then return null
var cursor = new MongoCursor(c)
if cursor.is_ok then