From 3d59b5d7036c35fe484d052ff32dbdc9d0a75cf7 Mon Sep 17 00:00:00 2001 From: Dan Engelbrecht Date: Mon, 13 Apr 2026 19:17:09 +0200 Subject: fix utf characters in source code (#953) --- src/zencore/sentryintegration.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/zencore/sentryintegration.cpp') diff --git a/src/zencore/sentryintegration.cpp b/src/zencore/sentryintegration.cpp index 8491bef64..7e3f33191 100644 --- a/src/zencore/sentryintegration.cpp +++ b/src/zencore/sentryintegration.cpp @@ -250,7 +250,7 @@ SentryIntegration::Initialize(const Config& Conf, const std::string& CommandLine if (SentryOptions == nullptr) { - // OOM — skip sentry entirely rather than crashing on the subsequent set calls + // OOM - skip sentry entirely rather than crashing on the subsequent set calls m_SentryErrorCode = -1; m_IsInitialized = true; return; -- cgit v1.2.3 From 28a61b12d302e9e0d37d52bf1aa5d19069f3411b Mon Sep 17 00:00:00 2001 From: Dan Engelbrecht Date: Mon, 20 Apr 2026 15:53:22 +0200 Subject: zen history command (#987) - Feature: Per-user invocation history for `zen` and `zenserver`; each startup appends a record to a JSONL file capped at the most recent 100 entries. Location: `%LOCALAPPDATA%\Epic\Zen\History\invocations.jsonl` on Windows, `~/.zen/History/invocations.jsonl` on POSIX - `zen history` opens an interactive picker; selecting a zen row re-runs it inline and forwards the exit code, selecting a zenserver row spawns it detached - `zen history --list` (`-l`) prints the table to stdout instead of showing the picker - `zen history --filter zen|zenserver` restricts the listing to one executable - `zen history --print` prints the reconstructed command line of the selected row instead of launching it - `--enable-execution-history` global option on both binaries (default `true`) to opt out per invocation - The history file is attached to Sentry crash reports (alongside the existing zenserver log) --- src/zencore/sentryintegration.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'src/zencore/sentryintegration.cpp') diff --git a/src/zencore/sentryintegration.cpp b/src/zencore/sentryintegration.cpp index 7e3f33191..61b735594 100644 --- a/src/zencore/sentryintegration.cpp +++ b/src/zencore/sentryintegration.cpp @@ -261,14 +261,23 @@ SentryIntegration::Initialize(const Config& Conf, const std::string& CommandLine sentry_options_set_logger(SentryOptions, SentryLogFunction, this); sentry_options_set_environment(SentryOptions, Conf.Environment.empty() ? "production" : Conf.Environment.c_str()); - std::string SentryAttachmentsPath = Conf.AttachmentsPath; - if (!SentryAttachmentsPath.empty()) + for (const std::filesystem::path& AttachmentPath : Conf.AttachmentPaths) { - if (SentryAttachmentsPath.starts_with("\\\\?\\")) + if (AttachmentPath.empty()) { - SentryAttachmentsPath = SentryAttachmentsPath.substr(4); + continue; } - sentry_options_add_attachment(SentryOptions, SentryAttachmentsPath.c_str()); +# if ZEN_PLATFORM_WINDOWS + const std::wstring Wide = AttachmentPath.wstring(); + const wchar_t* WPath = Wide.c_str(); + if (Wide.starts_with(L"\\\\?\\")) + { + WPath += 4; + } + sentry_options_add_attachmentw(SentryOptions, WPath); +# else + sentry_options_add_attachment(SentryOptions, AttachmentPath.string().c_str()); +# endif } sentry_options_set_release(SentryOptions, ZEN_CFG_VERSION); -- cgit v1.2.3