MINOR: WURFL: wurfl_get() and wurfl_get_all() now return an empty string if device detection fails
diff --git a/src/wurfl.c b/src/wurfl.c
index e7256d9..ae3d2fc 100644
--- a/src/wurfl.c
+++ b/src/wurfl.c
@@ -433,14 +433,14 @@
 	wh.wsmp = smp;
 	dHandle = wurfl_lookup(global_wurfl.handle, &ha_wurfl_retrieve_header, &wh);
 
+	temp = get_trash_chunk();
+	chunk_reset(temp);
+
 	if (!dHandle) {
 		ha_wurfl_log("WURFL: unable to retrieve device from request %s\n", wurfl_get_error_message(global_wurfl.handle));
-		return 1;
+		goto wurfl_get_all_completed;
 	}
 
-	temp = get_trash_chunk();
-	chunk_reset(temp);
-
 	list_for_each_entry(wi, &global_wurfl.information_list, list) {
 
 		switch(wi->data.type) {
@@ -481,6 +481,8 @@
 		chunk_appendf(temp, "%c", global_wurfl.information_list_separator);
 	}
 
+wurfl_get_all_completed:
+
 	wurfl_device_destroy(dHandle);
 	smp->data.u.str.area = temp->area;
 	smp->data.u.str.data = temp->data;
@@ -507,14 +509,14 @@
 	wh.wsmp = smp;
 	dHandle = wurfl_lookup(global_wurfl.handle, &ha_wurfl_retrieve_header, &wh);
 
+	temp = get_trash_chunk();
+	chunk_reset(temp);
+
 	if (!dHandle) {
 		ha_wurfl_log("WURFL: unable to retrieve device from request %s\n", wurfl_get_error_message(global_wurfl.handle));
-		return 1;
+		goto wurfl_get_completed;
 	}
 
-	temp = get_trash_chunk();
-	chunk_reset(temp);
-
 	while (args[i].data.str.area) {
 		node = ebst_lookup(&global_wurfl.btree, args[i].data.str.area);
 
@@ -567,6 +569,8 @@
 		i++;
 	}
 
+wurfl_get_completed:
+
 	wurfl_device_destroy(dHandle);
 	smp->data.u.str.area = temp->area;
 	smp->data.u.str.data = temp->data;