hog-lib: Fix not reading report_map of instances

If there is multiple instances the gatt_db of the instances was not
initialized causing the report_map_attr to be NULL which prevents the
report_map to be read and uhid device to be created.

Fixes: https://github.com/bluez/bluez/issues/298
diff --git a/profiles/input/hog-lib.c b/profiles/input/hog-lib.c
index e69ea1b..4a9c601 100644
--- a/profiles/input/hog-lib.c
+++ b/profiles/input/hog-lib.c
@@ -1518,6 +1518,7 @@
 	if (!instance)
 		return;
 
+	instance->gatt_db = gatt_db_ref(hog->gatt_db);
 	hog->instances = g_slist_append(hog->instances, bt_hog_ref(instance));
 }
 
@@ -1557,6 +1558,8 @@
 	if (!hog)
 		return NULL;
 
+	hog->gatt_db = gatt_db_ref(db);
+
 	if (db) {
 		bt_uuid_t uuid;
 
@@ -1573,8 +1576,6 @@
 			hog->dis = bt_dis_new(db);
 			bt_dis_set_notification(hog->dis, dis_notify, hog);
 		}
-
-		hog->gatt_db = gatt_db_ref(db);
 	}
 
 	return bt_hog_ref(hog);
@@ -1675,7 +1676,8 @@
 	}
 
 	instance = bt_hog_new(hog->uhid_fd, hog->name, hog->vendor,
-					hog->product, hog->version, NULL);
+					hog->product, hog->version,
+					hog->gatt_db);
 	if (!instance)
 		return;