From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 5868 invoked from network); 23 Jan 2022 00:56:19 -0000 Received: from 4ess.inri.net (216.126.196.42) by inbox.vuxu.org with ESMTPUTF8; 23 Jan 2022 00:56:19 -0000 Received: from mail-pj1-f46.google.com ([209.85.216.46]) by 4ess; Sat Jan 22 19:49:35 -0500 2022 Received: by mail-pj1-f46.google.com with SMTP id nn16-20020a17090b38d000b001b56b2bce31so1816831pjb.3 for <9front@9front.org>; Sat, 22 Jan 2022 16:49:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mforney.org; s=google; h=from:message-id:date:subject:to:mime-version :content-transfer-encoding; bh=Edo6h3dxejymtGApbiEaWes7TlROIfUQjh5YEyHN0xg=; b=KlfT6fviz1qvY1ubwJBFaUppck3fta7sALnAN8eYEZRQRTvCiaYTDZOgjKexaw1O1z DI+Sq1a7G5t17uyIC9WyPHjGN7Tdc9w7L80+yFtw5bdYgxVkuc5rVTHtzaPXYLENSZUj CwbwdDIsiLyYLs2LLjMwHdLCaewTc4jbj0aNXEHhkMJ02x44uEhcl0ZRE9w3uiH4Tz2W PFukkN4+y2GlLKZLwH7C15Tx2pedBoCjEFXjWiF2xw9x9kUs/tOfNIYbGN9sIPC+/nWf 79jksFgfoTexcsX6kg909q+KAz0GTaLyPzRdKqVjNurdzP1gVzs/NvV+QpTIBCy6u2Li +MsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:message-id:date:subject:to:mime-version :content-transfer-encoding; bh=Edo6h3dxejymtGApbiEaWes7TlROIfUQjh5YEyHN0xg=; b=FfkgLKTI9t0eZXyvTAUz0wBrdXESE+Eq6FsgrLyCj338VT7oqC+OuR+BzbXw1+MH7a lAIpqPcDB1/xdI2N4X7bN4/j0q8a4mASO6sDs790rtZPAXs5zvvusR992/AdL9SwVIBt bc6V7elBDzOItgBM/RE/RiowfN8x9mvhbwciT1chOXYfRD+jm+DVG6GBqdPclho1TUVp peXSri20BKBNBDlSjtT4PcerAysfSZTskeXSRNPwMmHNzsvSYqho7/Id3lKMxLEzTvGd BYl6qV/42lQX1xXfxnwQdAScyyjAJxy2D0ecSUzO+wyf8ETzMtBfweTxKhxHRwm/OXYe aPCg== X-Gm-Message-State: AOAM533mgXwJZpyd2SYhr1Jfu9bmIX5kvBIw0Y86ftsUTtx1WvRiWTWg EMoci0+1V091oO85ZobLn8OphVN+t++rTNKWeHw= X-Google-Smtp-Source: ABdhPJwh77PROYTMcob7RO0WM5g/WgCEkVlL/WJTvWYcuEilVFgTk8Rgv52ASFRLSEpioZ2dL8PyFw== X-Received: by 2002:a17:902:c102:b0:14b:7fc:2660 with SMTP id 2-20020a170902c10200b0014b07fc2660mr9106616pli.92.1642898966191; Sat, 22 Jan 2022 16:49:26 -0800 (PST) Return-Path: Received: from arrow ([98.45.152.168]) by smtp.gmail.com with ESMTPSA id mt14sm9079123pjb.21.2022.01.22.16.49.25 for <9front@9front.org> (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 22 Jan 2022 16:49:25 -0800 (PST) From: Michael Forney Message-ID: <81393E6026E97B03CBD1F42837BCCE28@arrow> Date: Sun, 23 Jan 2022 00:39:21 +0000 To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: flexible compliant general-purpose TOR injection-aware realtime-java-oriented realtime-java element optimizer Subject: [9front] [PATCH] git/query: leave range commits in topological order Reply-To: 9front@9front.org Precedence: bulk This prevents commits from getting reordered incorrectly during rebase or export. --- diff 108d74cb0a8d27e82550d2772ae64fd7748e151d bb59fa1f40b5e5756639480fc08e0f33c7e19019 --- a/sys/src/cmd/git/ref.c Fri Jan 7 02:37:02 2022 +++ b/sys/src/cmd/git/ref.c Sat Jan 22 16:39:21 2022 @@ -51,26 +51,6 @@ ev->p++; } -int -objdatecmp(void *pa, void *pb) -{ - Object *a, *b; - int r; - - a = readobject((*(Object**)pa)->hash); - b = readobject((*(Object**)pb)->hash); - assert(a->type == GCommit && b->type == GCommit); - if(a->commit->mtime == b->commit->mtime) - r = 0; - else if(a->commit->mtime < b->commit->mtime) - r = -1; - else - r = 1; - unref(a); - unref(b); - return r; -} - void push(Eval *ev, Object *o) { @@ -406,7 +386,7 @@ range(Eval *ev) { Object *a, *b, *p, *q, **all; - int nall, *idx, mark; + int nall, *idx; Objset keep, skip; b = pop(ev); @@ -424,7 +404,6 @@ all = nil; idx = nil; nall = 0; - mark = ev->nstk; osinit(&keep); osinit(&skip); osadd(&keep, a); @@ -459,7 +438,6 @@ nall++; } free(all); - qsort(ev->stk + mark, ev->nstk - mark, sizeof(Object*), objdatecmp); return 0; error: free(all);