diff --git a/src/api/user.js b/src/api/user.js
index e135f27a..be73d9a6 100644
--- a/src/api/user.js
+++ b/src/api/user.js
@@ -10,6 +10,11 @@ const userReq = {
return window.API.call(`users/${params.userId}`, {
method: 'GET'
}).then((json) => {
+ if (!json) {
+ throw new Error(
+ `getUser missing user data for: ${params.userId}`
+ );
+ }
const args = {
json,
params
diff --git a/src/app.js b/src/app.js
index ec94f6cd..7450dc29 100644
--- a/src/app.js
+++ b/src/app.js
@@ -532,6 +532,10 @@ console.log(`isLinux: ${LINUX}`);
API.$on('USER:LIST', function (args) {
for (var json of args.json) {
+ if (!json.displayName) {
+ console.error('getUsers gave us garbage', json);
+ continue;
+ }
this.$emit('USER', {
json,
params: {
diff --git a/src/service/database.js b/src/service/database.js
index dea6ec6d..5a4325af 100644
--- a/src/service/database.js
+++ b/src/service/database.js
@@ -2192,13 +2192,9 @@ class Database {
addAvatarToHistory(avatarId) {
sqliteService.executeNonQuery(
- `UPDATE ${Database.userPrefix}_avatar_history
- SET created_at = @created_at, time = COALESCE(time, 0)
- WHERE avatar_id = @avatar_id;
-
- INSERT INTO ${Database.userPrefix}_avatar_history (avatar_id, created_at, time)
- SELECT @avatar_id, @created_at, 0
- WHERE NOT EXISTS (SELECT * FROM ${Database.userPrefix}_avatar_history WHERE avatar_id = @avatar_id)`,
+ `INSERT INTO ${Database.userPrefix}_avatar_history (avatar_id, created_at, time)
+ VALUES (@avatar_id, @created_at, 0)
+ ON CONFLICT(avatar_id) DO UPDATE SET created_at = @created_at`,
{
'@avatar_id': avatarId,
'@created_at': new Date().toJSON()
diff --git a/src/views/Favorites/components/FavoritesAvatarItem.vue b/src/views/Favorites/components/FavoritesAvatarItem.vue
index 239fd782..a2adae17 100644
--- a/src/views/Favorites/components/FavoritesAvatarItem.vue
+++ b/src/views/Favorites/components/FavoritesAvatarItem.vue
@@ -121,6 +121,14 @@
+