Here's a trick to avoid repeating a list of things in multiple places:
#define ENUMERATE_THINGS \
ENUMERATE_THING(Foo) \
ENUMERATE_THING(Bar) \
ENUMERATE_THING(Baz)
#define ENUMERATE_THING(thing) thing
ENUMERATE_THINGS
#pragma once | |
#include <AK/BufferStream.h> | |
#include <AK/OwnPtr.h> | |
#include <LibGfx/Color.h> | |
#include <LibGfx/Rect.h> | |
#include <LibIPC/Decoder.h> | |
#include <LibIPC/Encoder.h> | |
#include <LibIPC/Endpoint.h> | |
#include <LibIPC/Message.h> |
Here's a trick to avoid repeating a list of things in multiple places:
#define ENUMERATE_THINGS \
ENUMERATE_THING(Foo) \
ENUMERATE_THING(Bar) \
ENUMERATE_THING(Baz)
#define ENUMERATE_THING(thing) thing
ENUMERATE_THINGS
==3525808== Conditional jump or move depends on uninitialised value(s) | |
==3525808== at 0x17F632: TLS::(anonymous namespace)::_parse_asn1(TLS::Context const&, TLS::Certificate&, unsigned char const*, unsigned long, int, unsigned int*, unsigned char*, int, unsigned char*, (anonymous namespace)::OIDChain*) [clone .constprop.0] (TLSv12.cpp:210) | |
==3525808== by 0x18116B: TLS::TLSv12::parse_asn1(AK::ByteBuffer const&, bool) const (TLSv12.cpp:405) | |
==3525808== by 0x18181B: TLS::TLSv12::handle_certificate(AK::ByteBuffer const&) (TLSv12.cpp:489) | |
==3525808== by 0x1958E2: TLS::TLSv12::handle_payload(AK::ByteBuffer const&) (ClientHandshake.cpp:381) | |
==3525808== by 0x1900C4: TLS::TLSv12::handle_message(AK::ByteBuffer const&) (Record.cpp:282) | |
==3525808== by 0x17C1BD: TLS::TLSv12::consume(AK::ByteBuffer const&) (TLSv12.cpp:544) | |
==3525808== by 0x176575: TLS::TLSv12::read_from_socket() (Socket.cpp:142) | |
==3525808== by 0x1532E6: Core::Object::dispatch_event(Core::Event&, Core::Object*) (Object.cpp:201) | |
==352 |
USERSPACE(24) ASSERTION FAILED: offset + size <= this->size() | |
.././AK/ByteBuffer.h:188 | |
[colonel(0:0)]: Terminating due to signal 6 | |
[FinalizerTask(3:3)]: 0xdeadc0de Kernel::Scheduler::switch_now() +64 | |
0xdeadc0de Kernel::Scheduler::yield() +85 | |
0xdeadc0de Kernel::Thread::yield_without_holding_big_lock() +36 | |
0xdeadc0de Kernel::Process::do_killself(int) +191 | |
0xdeadc0de Kernel::Process::sys$kill(int, int) +258 | |
0xdeadc0de syscall_handler +1158 | |
0xdeadc0de syscall_asm_entry +29 |
[Shell(22:22)]: CPU[0] NP(error) fault at invalid address V0xedededfb | |
[Shell(22:22)]: Unrecoverable page fault, read from address V0xedededfb | |
[Shell(22:22)]: Note: Address V0xedededfb looks like it may be recently free()'d memory | |
[Shell(22:22)]: CRASH: CPU #0 Page Fault. Ring 3. | |
[Shell(22:22)]: exception code: 0004 (isr: 0000 | |
[Shell(22:22)]: pc=001b:08072037 flags=0246 | |
[Shell(22:22)]: stk=0023:026026e8 | |
[Shell(22:22)]: ds=0023 es=0023 fs=0023 gs=002b | |
[Shell(22:22)]: eax=00000000 ebx=edededfb ecx=00000000 edx=edededfb | |
[Shell(22:22)]: ebp=026026e8 esp=c38bbfe8 esi=0808cb01 edi=00000000 |
. | |
Libraries | |
AK | |
Kernel | |
Libraries/LibC | |
Libraries/LibPthread | |
Libraries/LibM | |
Services | |
Shell | |
Toolchain/Local/i686-pc-serenity/include/c++/10.1.0/ |
diff --git a/Kernel/TTY/TTY.cpp b/Kernel/TTY/TTY.cpp | |
index d40c46108..65c4c247c 100644 | |
--- a/Kernel/TTY/TTY.cpp | |
+++ b/Kernel/TTY/TTY.cpp | |
@@ -54,6 +54,11 @@ void TTY::set_default_termios() | |
KResultOr<size_t> TTY::read(FileDescription&, size_t, u8* buffer, size_t size) | |
{ | |
+ if (Process::current()->pgid() != pgid()) { | |
+ Process::current()->send_signal(SIGTTIN, nullptr); |
diff --git a/Libraries/LibTLS/TLSv12.cpp b/Libraries/LibTLS/TLSv12.cpp | |
index cf823f58c..5d8bc5e7a 100644 | |
--- a/Libraries/LibTLS/TLSv12.cpp | |
+++ b/Libraries/LibTLS/TLSv12.cpp | |
@@ -788,6 +788,7 @@ Optional<size_t> TLSv12::verify_chain_and_get_matching_certificate(const StringV | |
for (size_t i = 0; i < m_context.certificates.size(); ++i) { | |
auto& cert = m_context.certificates[i]; | |
+ return 0; // LOL | |
// FIXME: Also check against SAN (oid 2.5.29.17). |
#!/bin/Shell | |
results_dir=/tmp/rwt | |
rm -rf $results_dir | |
mkdir -p $results_dir | |
cd $results_dir | |
echo Running web layout tests... |
diff --git a/Applications/Spreadsheet/Spreadsheet.cpp b/Applications/Spreadsheet/Spreadsheet.cpp | |
index 90240cc23..4e34cacf6 100644 | |
--- a/Applications/Spreadsheet/Spreadsheet.cpp | |
+++ b/Applications/Spreadsheet/Spreadsheet.cpp | |
@@ -59,6 +59,7 @@ Sheet::Sheet(const StringView& name, Workbook& workbook) | |
Sheet::Sheet(Workbook& workbook) | |
: m_workbook(workbook) | |
{ | |
+ JS::DeferGC defer_gc(m_workbook.interpreter().heap()); | |
m_global_object = m_workbook.interpreter().heap().allocate_without_global_object<SheetGlobalObject>(*this); |