delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/10/08/17:55:45

X-Spam-Check-By: sourceware.org
To: cygwin AT cygwin DOT com
From: Enrico Forestieri <forenr AT tlc DOT unipr DOT it>
Subject: Re: lyx has problem with network directory names
Date: Sun, 8 Oct 2006 21:54:45 +0000 (UTC)
Lines: 48
Message-ID: <loom.20061008T234256-878@post.gmane.org>
References: <20061004190525 DOT GA18950 AT panix DOT com> <loom DOT 20061006T123901-847 AT post DOT gmane DOT org> <452938D4 DOT 60304 AT cygwin DOT com>
Mime-Version: 1.0
User-Agent: Loom/3.14 (http://gmane.org/)
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Larry Hall writes:

> 
> Enrico Forestieri wrote:
> > David Arnstein writes:
> >> I just tried to use the Cygwin port of lyx. It cannot cope with my
> >> home directory, which appears as //fs-sj1-15/darnstein in Cygwin. This
> >> is a network directory, obviously.
> >>
> >> When lyx starts up, it emits a complaint
> >> 	QSettings: error creating /fs-sj1-15/darnstein/.qt
> >>
> >> When I try to save a lyx document to my home directory, lyx complains
> >> when it presents its file browser dialog box. It says
> >> 	Could not read directory /fs-sj1-15
> >>
> >> It appears that lyx is trying to access the root directory (/). It
> >> does not seem to know how to interpret the Windows syntax "//."
> > 
> > This is because lyx uses the boostfs library with BOOST_POSIX defined,
> > so any path of the form //xxx/yyy is normalized to /xxx/yyy.
> > I understand that //machine/path is a windowism, but I think that it
> > should be allowed on cygwin. Can this be seen a boost bug?
> > 
> 
> Possibly.  But I expect boost folks would argue that using UNC syntax doesn't
> fit with POSIX semantics.  Currently, the code keys off of BOOST_POSIX or
> BOOST_WINDOWS defines to determine the API to use.  Under Cygwin, BOOST_POSIX
> makes the most sense but with that definition comes the restriction of no UNC
> paths.  Obviously, the workaround for now is to just mount the path in Cygwin
> to create a POSIX path to use.  This will make Lyx happy without too much of a
> burden for the user.

As I explained in an another mail, in this case the culprit is qt3
and not boost. I suspected boost because of the following comment
in boost/libs/filesystem/src/path_posix_windows.cpp:

  // POSIX & Windows cases: "", "/", "/foo", "foo", "foo/bar"
  // Windows only cases: "c:", "c:/", "c:foo", "c:/foo",
  //                     "prn:", "//share", "//share/", "//share/foo"

but, even if UNC paths are not taken into account, the leading '/' is
not stripped out. Instead, it is qt3 that strips it and I also posted
a patch allowing UNC paths in qt3. Maybe it can be applied to the cygwin
package?

-- 
Enrico


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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019