From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 39124 invoked by alias); 28 Oct 2017 12:29:51 -0000 Mailing-List: contact cygwin-apps-help@cygwin.com; run by ezmlm Precedence: bulk Sender: cygwin-apps-owner@cygwin.com List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps@cygwin.com Received: (qmail 39010 invoked by uid 89); 28 Oct 2017 12:29:50 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.5 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: limerock02.mail.cornell.edu Received: from limerock02.mail.cornell.edu (HELO limerock02.mail.cornell.edu) (128.84.13.242) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 28 Oct 2017 12:29:49 +0000 X-CornellRouted: This message has been Routed already. Received: from authusersmtp.mail.cornell.edu (granite4.serverfarm.cornell.edu [10.16.197.9]) by limerock02.mail.cornell.edu (8.14.4/8.14.4_cu) with ESMTP id v9SCTkIe017121; Sat, 28 Oct 2017 08:29:47 -0400 Received: from localhost.localdomain (65-112-130-194.dia.static.qwest.net [65.112.130.194]) (authenticated bits=0) by authusersmtp.mail.cornell.edu (8.14.4/8.12.10) with ESMTP id v9SCTcU6025906 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Sat, 28 Oct 2017 08:29:46 -0400 From: Ken Brown To: cygwin-apps@cygwin.com Subject: [[PATCH setup topic/libsolv] 2/2] Avoid clobbering installed.db when no setup.ini is found Date: Sat, 28 Oct 2017 12:29:00 -0000 Message-Id: <20171028122932.3024-2-kbrown@cornell.edu> In-Reply-To: <20171028122932.3024-1-kbrown@cornell.edu> References: <20171028122932.3024-1-kbrown@cornell.edu> X-PMX-Cornell-Gauge: Gauge=X X-PMX-CORNELL-AUTH-RESULTS: dkim-out=none; X-IsSubscribed: yes X-SW-Source: 2017-10/txt/msg00158.txt.bz2 Move the calls to packagedb::read and other packagedb functions from do_ini_thread to ChooserPage::OnInit. If no setup.ini is found, do_ini_thread is never called. But we need to ensure that packagedb::read is called, or else installed.db gets emptied. --- choose.cc | 5 +++++ ini.cc | 7 ------- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/choose.cc b/choose.cc index 619d7db..013a30a 100644 --- a/choose.cc +++ b/choose.cc @@ -268,6 +268,11 @@ ChooserPage::OnInit () packagemeta::ScanDownloadedFiles (MirrorOption); packagedb db; + db.makeBase(); + db.read(); + db.upgrade(); + db.fixup_source_package_ids(); + db.removeEmptyCategories(); db.setExistence (); db.fillMissingCategory (); diff --git a/ini.cc b/ini.cc index 5089e8b..0f8b927 100644 --- a/ini.cc +++ b/ini.cc @@ -352,13 +352,6 @@ do_ini_thread (HINSTANCE h, HWND owner) else ini_count = do_remote_ini (owner); - packagedb db; - db.makeBase(); - db.read(); - db.upgrade(); - db.fixup_source_package_ids(); - db.removeEmptyCategories(); - if (ini_count == 0) return false; -- 2.14.2