optional icu diff.
[AROS.git] / rom / dos / exallend.c
blobeda048319a1c85299012157e1ddf79bd5112e1ad
1 /*
2 Copyright © 1995-2013, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc:
6 Lang: English
7 */
8 #include <exec/memory.h>
9 #include <proto/exec.h>
10 #include <dos/dosextens.h>
11 #include <dos/exall.h>
12 #include "dos_intern.h"
14 /*****************************************************************************
16 NAME */
17 #include <proto/dos.h>
19 AROS_LH5(void, ExAllEnd,
21 /* SYNOPSIS */
22 AROS_LHA(BPTR, lock, D1),
23 AROS_LHA(struct ExAllData *, buffer, D2),
24 AROS_LHA(LONG, size, D3),
25 AROS_LHA(LONG, data, D4),
26 AROS_LHA(struct ExAllControl *, control, D5),
28 /* LOCATION */
29 struct DosLibrary *, DOSBase, 165, Dos)
31 /* FUNCTION
32 Stop an ExAll() operation before returning ERROR_NO_MORE_ENTRIES.
34 INPUTS
35 The inputs should correspond to the inputs for the ExAll() function.
37 lock - lock on the directory that is being examined
38 buffer - buffer for data returned
39 size - size of 'buffer' in bytes
40 type - type of data to be returned
41 control - control data structure
43 RESULT
45 NOTES
46 The control data structure must have been allocated with
47 AllocDosObject().
49 EXAMPLE
51 BUGS
53 SEE ALSO
54 ExAll(), AllocDosObject()
56 INTERNALS
58 *****************************************************************************/
60 AROS_LIBFUNC_INIT
62 if (((struct InternalExAllControl *)control)->fib == NULL)
64 /* Get pointer to filehandle */
65 struct FileLock *fl = (struct FileLock *)BADDR(lock);
66 dopacket5(DOSBase, NULL, fl->fl_Task, ACTION_EXAMINE_ALL_END, (SIPTR)lock, (IPTR)buffer, (IPTR)size, (IPTR)data, (IPTR)control);
68 else
70 control->eac_LastKey = 0;
74 AROS_LIBFUNC_EXIT
75 } /* ExAllEnd */