mirror of https://github.com/FDOS/kernel.git
Some small cleanups from Lucho.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@946 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
b89c1b7cd3
commit
fe3a2a1dd5
|
@ -336,16 +336,11 @@ COUNT SftSeek(int sft_idx, LONG new_pos, COUNT mode)
|
|||
* Lredir via mfs.c from DosEMU works when writing appended files.
|
||||
* Mfs.c looks for these mode bits set, so here is my best guess.;^)
|
||||
*/
|
||||
if ((s->sft_mode & O_DENYREAD) || (s->sft_mode & O_DENYNONE))
|
||||
{
|
||||
if (s->sft_mode & (O_DENYREAD | O_DENYNONE))
|
||||
s->sft_posit = remote_lseek(s, new_pos);
|
||||
return SUCCESS;
|
||||
}
|
||||
else
|
||||
{
|
||||
s->sft_posit = s->sft_size + new_pos;
|
||||
return SUCCESS;
|
||||
}
|
||||
return SUCCESS;
|
||||
}
|
||||
if (mode == 0)
|
||||
{
|
||||
|
@ -460,8 +455,7 @@ STATIC int DeviceOpenSft(struct dhdr FAR *dhp, sft FAR *sftp)
|
|||
sftp->sft_shroff = -1; /* /// Added for SHARE - Ron Cemer */
|
||||
sftp->sft_count += 1;
|
||||
sftp->sft_flags =
|
||||
((dhp->
|
||||
dh_attr & ~SFT_MASK) & ~SFT_FSHARED) | SFT_FDEVICE | SFT_FEOF;
|
||||
(dhp->dh_attr & ~(SFT_MASK | SFT_FSHARED)) | SFT_FDEVICE | SFT_FEOF;
|
||||
fmemcpy(sftp->sft_name, dhp->dh_name, FNAME_SIZE);
|
||||
|
||||
/* pad with spaces */
|
||||
|
@ -1096,8 +1090,8 @@ COUNT DosFindNext(void)
|
|||
COUNT rc;
|
||||
register dmatch FAR *dmp = dta;
|
||||
|
||||
/* /// findnext will always fail on a device name device name or volume id */
|
||||
if (dmp->dm_attr_fnd == D_DEVICE || dmp->dm_attr_fnd & D_VOLID)
|
||||
/* findnext will always fail on a device name device name or volume id */
|
||||
if (dmp->dm_attr_fnd & (D_DEVICE | D_VOLID))
|
||||
return DE_NFILES;
|
||||
|
||||
/*
|
||||
|
@ -1314,14 +1308,14 @@ COUNT DosRename(BYTE FAR * path1, BYTE FAR * path2)
|
|||
if (result < SUCCESS)
|
||||
return result;
|
||||
|
||||
if (!(result & IS_NETWORK) && (result & IS_DEVICE))
|
||||
if ((result & (IS_NETWORK | IS_DEVICE)) == IS_DEVICE)
|
||||
return DE_FILENOTFND;
|
||||
|
||||
result = truename(path1, PriPathName, CDS_MODE_CHECK_DEV_PATH);
|
||||
if (result < SUCCESS)
|
||||
return result;
|
||||
|
||||
if (!(result & IS_NETWORK) && (result & IS_DEVICE))
|
||||
if ((result & (IS_NETWORK | IS_DEVICE)) == IS_DEVICE)
|
||||
return DE_FILENOTFND;
|
||||
|
||||
return DosRenameTrue(PriPathName, SecPathName, D_ALL);
|
||||
|
|
|
@ -105,28 +105,16 @@ f_node_ptr dir_open(register const char *dirname)
|
|||
|
||||
/* Convert the name into an absolute name for */
|
||||
/* comparison... */
|
||||
/* first the file name with trailing spaces... */
|
||||
|
||||
memset(fcbname, ' ', FNAME_SIZE + FEXT_SIZE);
|
||||
|
||||
for (i = 0; i < FNAME_SIZE; i++)
|
||||
for (i = 0; i < FNAME_SIZE + FEXT_SIZE; i++, dirname++)
|
||||
{
|
||||
if (*dirname != '\0' && *dirname != '.' && *dirname != '/' &&
|
||||
*dirname != '\\')
|
||||
fcbname[i] = *dirname++;
|
||||
else
|
||||
break;
|
||||
}
|
||||
|
||||
/* and the extension (don't forget to */
|
||||
/* add trailing spaces)... */
|
||||
if (*dirname == '.')
|
||||
++dirname;
|
||||
for (i = 0; i < FEXT_SIZE; i++)
|
||||
{
|
||||
if (*dirname != '\0' && *dirname != '.' && *dirname != '/' &&
|
||||
*dirname != '\\')
|
||||
fcbname[i + FNAME_SIZE] = *dirname++;
|
||||
char c = *dirname;
|
||||
if (c == '.')
|
||||
i = FNAME_SIZE - 1;
|
||||
else if (c != '\0' && c != '\\')
|
||||
fcbname[i] = c;
|
||||
else
|
||||
break;
|
||||
}
|
||||
|
@ -164,10 +152,8 @@ f_node_ptr dir_open(register const char *dirname)
|
|||
/* swap internal and external delete flags */
|
||||
STATIC void swap_deleted(char *name)
|
||||
{
|
||||
if (name[0] == DELETED)
|
||||
name[0] = EXT_DELETED;
|
||||
else if (name[0] == EXT_DELETED)
|
||||
name[0] = DELETED;
|
||||
if (name[0] == DELETED || name[0] == EXT_DELETED)
|
||||
name[0] ^= EXT_DELETED - DELETED; /* 0xe0 */
|
||||
}
|
||||
|
||||
STATIC struct buffer FAR *getblock_from_off(f_node_ptr fnp, unsigned secsize)
|
||||
|
@ -501,7 +487,7 @@ COUNT dos_findnext(void)
|
|||
++dmp->dm_entry;
|
||||
++fnp->f_diroff;
|
||||
if (fnp->f_dir.dir_name[0] != '\0' && fnp->f_dir.dir_name[0] != DELETED
|
||||
&& (fnp->f_dir.dir_attrib & D_VOLID) != D_VOLID)
|
||||
&& !(fnp->f_dir.dir_attrib & D_VOLID))
|
||||
{
|
||||
if (fcmp_wild(dmp->dm_name_pat, fnp->f_dir.dir_name, FNAME_SIZE + FEXT_SIZE))
|
||||
{
|
||||
|
|
|
@ -573,13 +573,8 @@ UBYTE FcbRename(xfcb FAR * lpXfcb)
|
|||
LocalFcb.fcb_drive = FcbDrive;
|
||||
FcbNameInit(&LocalFcb, loc_szBuffer, &FcbDrive);
|
||||
result = truename(loc_szBuffer, SecPathName, 0);
|
||||
if (result < SUCCESS || (!(result & IS_NETWORK) && (result & IS_DEVICE)))
|
||||
{
|
||||
result = FCB_ERROR;
|
||||
break;
|
||||
}
|
||||
|
||||
if (DosRenameTrue(PriPathName, SecPathName, wAttr) != SUCCESS)
|
||||
if (result < SUCCESS || (result & (IS_NETWORK|IS_DEVICE) == IS_DEVICE)
|
||||
|| DosRenameTrue(PriPathName, SecPathName, wAttr) != SUCCESS)
|
||||
{
|
||||
result = FCB_ERROR;
|
||||
break;
|
||||
|
|
|
@ -280,8 +280,8 @@ COUNT DosDevIOctl(lregs * r)
|
|||
r->AX = 0; /* (lock/unlock logical/physical volume) */
|
||||
break; /* simulate success for MS-DOS 7+ SCANDISK etc. --LG */
|
||||
}
|
||||
if (((r->AL == 0x04) && !(dpbp->dpb_device->dh_attr & ATTR_IOCTL))
|
||||
|| ((r->AL == 0x05) && !(dpbp->dpb_device->dh_attr & ATTR_IOCTL))
|
||||
if (((r->AL == 0x04 || r->AL == 0x05) &&
|
||||
!(dpbp->dpb_device->dh_attr & ATTR_IOCTL))
|
||||
|| ((r->AL == 0x11)
|
||||
&& !(dpbp->dpb_device->dh_attr & ATTR_QRYIOCTL))
|
||||
|| ((r->AL == 0x0d)
|
||||
|
|
Loading…
Reference in New Issue