diff --git a/server/routes/calendar.js b/server/routes/calendar.js index 4b7e186..e0c2b49 100644 --- a/server/routes/calendar.js +++ b/server/routes/calendar.js @@ -268,9 +268,7 @@ router.get('/google/callback', async (req, res) => { delete req.session.googleOAuthState; await googleCalendar.handleCallback(code); - - // Initialen Sync im Hintergrund starten (kein await - Redirect soll sofort erfolgen) - googleCalendar.sync().catch((e) => log.error('Initial sync failed:', e.message)); + await googleCalendar.sync(); res.redirect('/settings?sync_ok=google'); } catch (err) { diff --git a/server/services/google-calendar.js b/server/services/google-calendar.js index 662b9f0..9d2b7aa 100644 --- a/server/services/google-calendar.js +++ b/server/services/google-calendar.js @@ -303,10 +303,11 @@ function upsertGoogleEvents(items, calRefId = null, calColor = GOOGLE_COLOR) { }); for (const item of items) { + if (!item) continue; try { insertOrUpdate(item); } catch (err) { - log.error(`Upsert error for event ${item.id}:`, err.message); + log.error(`Upsert error for event ${item?.id}:`, err.message); } } }