feat: make System Log quit on failed query; display message box
This commit is contained in:
1 parent
2e3055f5f8
commit
63b4bd51e8
3 files changed
+19
-4
No files matched your search
@@ -12,4 +12,4 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#define MONTAUK_BUILD_NUMBER 265
|
#define MONTAUK_BUILD_NUMBER 267
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
# Makefile for syslog (standalone Window Server app) on MontaukOS
|
# Makefile for syslog on MontaukOS
|
||||||
# Copyright (c) 2026 Daniel Hammer
|
# Copyright (c) 2026 Daniel Hammer
|
||||||
|
|
||||||
MAKEFLAGS += -rR
|
MAKEFLAGS += -rR
|
||||||
@@ -51,9 +51,9 @@ TARGET := $(BINDIR)/apps/syslog/syslog.elf
|
|||||||
|
|
||||||
all: $(TARGET)
|
all: $(TARGET)
|
||||||
|
|
||||||
$(TARGET): $(OBJS) $(LINK_LD) Makefile $(LIBDIR)/libc/liblibc.a
|
$(TARGET): $(OBJS) $(LINK_LD) Makefile $(LIBDIR)/libc/liblibc.a $(LIBDIR)/libloader/liblibloader.a
|
||||||
mkdir -p $(BINDIR)/apps/syslog
|
mkdir -p $(BINDIR)/apps/syslog
|
||||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJS) $(LIBDIR)/libc/liblibc.a -o $@
|
$(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJS) $(LIBDIR)/libc/liblibc.a $(LIBDIR)/libloader/liblibloader.a -o $@
|
||||||
|
|
||||||
$(OBJDIR)/%.o: %.cpp Makefile
|
$(OBJDIR)/%.o: %.cpp Makefile
|
||||||
mkdir -p $(OBJDIR)
|
mkdir -p $(OBJDIR)
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
#include <gui/standalone.hpp>
|
#include <gui/standalone.hpp>
|
||||||
#include <gui/terminal.hpp>
|
#include <gui/terminal.hpp>
|
||||||
#include <gui/truetype.hpp>
|
#include <gui/truetype.hpp>
|
||||||
|
#include <gui/dialogs.hpp>
|
||||||
|
|
||||||
using namespace gui;
|
using namespace gui;
|
||||||
|
|
||||||
@@ -181,6 +182,20 @@ extern "C" void _start() {
|
|||||||
g_klog.last_pixels = g_win.pixels;
|
g_klog.last_pixels = g_win.pixels;
|
||||||
|
|
||||||
int n = (int)montauk::read_log(g_klog.klog_buf, KLOG_READ_SIZE);
|
int n = (int)montauk::read_log(g_klog.klog_buf, KLOG_READ_SIZE);
|
||||||
|
|
||||||
|
/* read_log can return CapabilityDenied or BadPointer */
|
||||||
|
if (n < 0) {
|
||||||
|
gui::dialogs::message_box(
|
||||||
|
"System Log",
|
||||||
|
"System Log was unable to query the system log buffer.",
|
||||||
|
gui::dialogs::MESSAGE_BOX_OK
|
||||||
|
);
|
||||||
|
|
||||||
|
klog_cleanup();
|
||||||
|
g_win.destroy();
|
||||||
|
montauk::exit(-(n));
|
||||||
|
}
|
||||||
|
|
||||||
if (n > 0) {
|
if (n > 0) {
|
||||||
klog_refeed(n);
|
klog_refeed(n);
|
||||||
g_klog.last_len = n;
|
g_klog.last_len = n;
|
||||||
|
|||||||
Reference in new issue
Block a user