Subject: bug#54281: 29.0.50; project-try-vc not return the root

From: Shuguang Sun <[email-masked]>
Date: Mon, 07 Mar 2022 12:41:11 +0800

Hi all,

The `project-current' and `project-try-vc' can't return the root but
just a list of `(vc Git)'. It is found that an `and' should be used in
the function `project-try-vc' instead of `or'.

The patch below fixs it.

```
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index daaf86f327..e8bd203979 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -418,7 +418,7 @@ project-vc-external-roots-function
 backend implementation of `project-external-roots'.")
 
 (defun project-try-vc (dir)
-  (or (vc-file-getprop dir 'project-vc)
+  (and (vc-file-getprop dir 'project-vc)
       (let* ((backend (ignore-errors (vc-responsible-backend dir)))
              (root
               (pcase backend
```

Best Regards,
Shuguang Sun

In GNU Emacs 29.0.50 (build 1, x86_64-w64-mingw32)
 of 2022-03-07 built on 
Repository revision: 36b31d38cd9bde7ad1ec18c136854cddba0d6bbe
Repository branch: master
Windowing system distributor 'Microsoft Corp.', version 10.0.19044
System Description: Microsoft Windows 10 Pro (v10.0.2009.19044.1526)

Configured using:
 'configure --without-pop --with-native-image-api
 --with-native-compilation --without-compress-install
 '--program-transform-name=s/^ctags$/ctags.emacs/''

Configured features:
ACL DBUS GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES
NATIVE_COMP NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS WEBP XPM ZLIB

Important settings:
  value of $LANG: CHS
  locale-coding-system: cp936