mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-15 00:06:09 +03:00
Allow startup with $HOME read-only (#3949)
Fixes #3202 Two changes to get here: 1. Do not fail startup if crash reporting initialization fails. This is a non-critical feature and should not prevent the terminal from starting. 2. Avoid freeing Sentry transport on error path. This segfaults. Upstream issue will be reported separately.
This commit is contained in:
@ -81,7 +81,11 @@ fn initThread(gpa: Allocator) !void {
|
|||||||
const alloc = arena.allocator();
|
const alloc = arena.allocator();
|
||||||
|
|
||||||
const transport = sentry.Transport.init(&Transport.send);
|
const transport = sentry.Transport.init(&Transport.send);
|
||||||
errdefer transport.deinit();
|
// This will crash if the transport was never used so we avoid
|
||||||
|
// that for now. This probably leaks some memory but it'd be very
|
||||||
|
// small and a one time cost. Once this is fixed upstream we can
|
||||||
|
// remove this.
|
||||||
|
//errdefer transport.deinit();
|
||||||
|
|
||||||
const opts = sentry.c.sentry_options_new();
|
const opts = sentry.c.sentry_options_new();
|
||||||
errdefer sentry.c.sentry_options_free(opts);
|
errdefer sentry.c.sentry_options_free(opts);
|
||||||
|
@ -127,7 +127,12 @@ pub const GlobalState = struct {
|
|||||||
internal_os.fixMaxFiles();
|
internal_os.fixMaxFiles();
|
||||||
|
|
||||||
// Initialize our crash reporting.
|
// Initialize our crash reporting.
|
||||||
try crash.init(self.alloc);
|
crash.init(self.alloc) catch |err| {
|
||||||
|
std.log.warn(
|
||||||
|
"sentry init failed, no crash capture available err={}",
|
||||||
|
.{err},
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
// const sentrylib = @import("sentry");
|
// const sentrylib = @import("sentry");
|
||||||
// if (sentrylib.captureEvent(sentrylib.Value.initMessageEvent(
|
// if (sentrylib.captureEvent(sentrylib.Value.initMessageEvent(
|
||||||
|
Reference in New Issue
Block a user