php / php/php-src

sqlite segv

Offen
#23,728 1 Kommentar 0 Reaktionen 1 zugewiesene Person Auf GitHub ansehen

@iliaal arbeitet bereits daran.

Seit 17.9.2026.

  • #23734 von @iliaal — offen
Bug Extension: sqlite3 Status: Verified
Vorherrschende Sprache
C
Sterne
40.4k
Forks
8.1k
Ø Merge
2 T. 13 Std.
Gemergte PRs (30 T.)
96

Beschreibung

Description

The following code:

<?php
$db = new SQLite3(':memory:');
$db->createFunction('evil', function () {
    global $stmt;
    $stmt->close();       
    return 1;
});
$stmt = $db->prepare("SELECT evil()");
$res = $stmt->execute();

Resulted in this output (truncated):

==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000063 ... READ
    #0 sqlite3ApiExit  (libsqlite3.so.0+0x912b4)
    #1 sqlite3_step    (libsqlite3.so.0+0xe1fb0)
    #2 zim_SQLite3Stmt_execute  ext/sqlite3/sqlite3.c:1901:16
PHP Version
8.6.0-dev
Operating System

Ubuntu 22.04

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.