* dtable.cc (cygwin_attach_handle_to_fd): Defend against NULL return from

build_fh_*.
(dtable::init_std_file_from_handle): Ditto.
* mmap.cc (mmap_record::alloc_fh): Ditto.
* path.cc (path_conv::check): Ditto.
This commit is contained in:
Christopher Faylor
2012-04-07 17:32:44 +00:00
parent 00ceaad134
commit e5b7e4d1c7
4 changed files with 26 additions and 6 deletions

View File

@ -744,13 +744,19 @@ path_conv::check (const char *src, unsigned opt,
{
/* FIXME: Calling build_fhandler here is not the right way to handle this. */
fhandler_virtual *fh = (fhandler_virtual *) build_fh_dev (dev, path_copy);
virtual_ftype_t file_type = fh->exists ();
if (file_type == virt_symlink)
virtual_ftype_t file_type;
if (!fh)
file_type = virt_none;
else
{
fh->fill_filebuf ();
symlen = sym.set (fh->get_filebuf ());
file_type = fh->exists ();
if (file_type == virt_symlink)
{
fh->fill_filebuf ();
symlen = sym.set (fh->get_filebuf ());
}
delete fh;
}
delete fh;
switch (file_type)
{
case virt_directory: