DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 51IJU83x3593975
Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com
Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com
DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 51IJU83x3593975
Authentication-Results: delorie.com;
	dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=PR1dPXN4
X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 891473858C62
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1739907007;
	bh=P3z4ZlzRBvWuKQeNIRQc/MJEIcimNghb7BFDdtmbODo=;
	h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe:
	 List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
	 From;
	b=PR1dPXN4lE2VMss0Rj/iKsWFZStiSQV2uWqAKcS+i7JN402WRyfpO53U9/jSrSmCx
	 sbEsZMb7+vUORDlgv8PMJQj28vkmU8WULHNA/c1Wf+bJSgtNuVXAlb77TIrR0VgjiY
	 L7YV83l76pqnJ1EcQ0wfLHLgxjJBTTW0fGy3zz4E=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 99B4F3858D20
Date: Tue, 18 Feb 2025 20:29:41 +0100
To: cygwin@cygwin.com
Subject: Re: [regression-3.6] df -k on Cygwin 3.6 no longer lists all
 filesystems
Message-ID: <Z7TfpSKvHtBxPd9f@calimero.vinschen.de>
Mail-Followup-To: cygwin@cygwin.com
References: <CALXu0UfOeEOsp4=zEa3Q3-9GjCmcQC6RCwdy2QEFA2uVvqRLhg@mail.gmail.com>
 <e8ab61d0-9893-6c20-e234-f58355d30189@jdrake.com>
 <Z7TZkWITTUxxnhf8@calimero.vinschen.de>
 <328ed80b-aadb-262b-fd7b-37d0cc04c88e@jdrake.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <328ed80b-aadb-262b-fd7b-37d0cc04c88e@jdrake.com>
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.30
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
From: Corinna Vinschen via Cygwin <cygwin@cygwin.com>
Reply-To: cygwin@cygwin.com
Cc: Corinna Vinschen <corinna-cygwin@cygwin.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cygwin-bounces~archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie.com@cygwin.com>

On Feb 18 11:19, Jeremy Drake via Cygwin wrote:
> On Tue, 18 Feb 2025, Corinna Vinschen via Cygwin wrote:
> 
> > Yep. Are you going to create a patch?
> 
> I'm not seeing a particularly clean way to do this.  Bring back
> available_drives, mask off bits when we see the corresponding drive root
> from dos_drive_mappings, and return those drive letters whose bits are
> still set at the end?

No, I wouldn't do that.

IMHO, the cleanest way to bring this back is to extend
dos_drive_mappings::dos_drive_mappings():

- Prior to the FindFirstVolumeW/FindNextVolumeW loop, prepend another
  loop iterating over GetLogicalDrives() or GetLogicalDriveStringsW().
  In the loop, call QueryDosDevice and add this info to
  dos_drive_mappings, just as in the FindVolume loop.

- In the second loop, simply ignore all mounts mounted to just a drive
  letter (because the first loop already added them all).

Makes sense?

Corinna



> 
> 
> -- 
> Problem reports:      https://cygwin.com/problems.html
> FAQ:                  https://cygwin.com/faq/
> Documentation:        https://cygwin.com/docs.html
> Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
