Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2011-10-30 08:50:36 +0400
committerChristopher Faylor <me@cgf.cx>2011-10-30 08:50:36 +0400
commitcd071d1363477d594a8c9ae9f2ca5e1357c8fe3d (patch)
tree131f42f55aa3ada545ab88f0e255b5342bdee181 /winsup/cygwin/fhandler.h
parent673a6913728d964c470470ca704d17ac74f07603 (diff)
* fhandler.h (fhandler_pipe::create_selectable): Remove optional argument, take
an options argument for CreateNamedPipe/CreateFile. Change handle arguments to expect pointers. (fhandler_fifo::fifo_state): Delete. (fhandler_fifo::dummy_client): Ditto. (fhandler_fifo::open_nonserver): Ditto. (fhandler_fifo::wait_state): Ditto. (fhandler_fifo::raw_write): Ditto. (fhandler_fifo::read_ready): New field. (fhandler_fifo::write_ready): Ditto. (fhandler_fifo::wait): Modify argument. (fhandler_fifo::fifo_name): Add a new argument. (fhandler_fifo::fixup_after_fork): New function. * fhandler_fifo.cc (fhandler_fifo::fhandler_fifo): Remove initialization of expunged elements. Initialize new handles to NULL. (fhandler_fifo::open_nonserver): Delete. (fnevent): New macro for creating a named event. (fnpipe): New macro for creating a unique named pipe name. (create_pipe): New macro for simplification of named pipe creation. (fhandler_fifo::fifo_name): Use new argument when creating a shared name. (fhandler_fifo::open): Rewrite. Use events to synchronize. (pure_debug_printf): New macro, active only when DEBUGGING. (fhandler_fifo::wait): Rewrite to wait for new fifo events which are supplied as a parameter. (fhandler_fifo::raw_read): Rewrite to use handle mechanism to detect client-side disconnect. (fhandler_fifo::raw_write): Delete. (fhandler_fifo::close): Remove accommodations for expunged fields. Close event handles. (fhandler_fifo::dup): Remove accommodations for expunged fields. Duplicate event handles. (fhandler_fifo::fixup_after_fork): New function. Perform fixups on event handles. (fhandler_fifo::set_close_on_exec): Remove accommodations for expunged fields. Set inheritance for new handle fields. * miscfuncs.cc (CreatePipeOverlapped): Accommodate changes in fhandler_pipe::create_selectable. * tty.cc (tty::not_allocated): Ditto. * pipe.cc (fhandler_pipe::create): Ditto. (fhandler_pipe::create_selectable): Accept an extra open_mode argument. Pass arguments by reference and allow opening one end of the pipe at a time. * sys/strace.h (debug_only_printf): Define new macro which calls debug_printf only when DEBUGGING is defined.
Diffstat (limited to 'winsup/cygwin/fhandler.h')
-rw-r--r--winsup/cygwin/fhandler.h179
1 files changed, 83 insertions, 96 deletions
diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h
index d46366757..900dd936a 100644
--- a/winsup/cygwin/fhandler.h
+++ b/winsup/cygwin/fhandler.h
@@ -129,16 +129,16 @@ class fhandler_base
struct status_flags
{
- unsigned rbinary : 1; /* binary read mode */
- unsigned rbinset : 1; /* binary read mode explicitly set */
- unsigned wbinary : 1; /* binary write mode */
- unsigned wbinset : 1; /* binary write mode explicitly set */
- unsigned nohandle : 1; /* No handle associated with fhandler. */
- unsigned did_lseek : 1; /* set when lseek is called as a flag that
+ unsigned rbinary : 1; /* binary read mode */
+ unsigned rbinset : 1; /* binary read mode explicitly set */
+ unsigned wbinary : 1; /* binary write mode */
+ unsigned wbinset : 1; /* binary write mode explicitly set */
+ unsigned nohandle : 1; /* No handle associated with fhandler. */
+ unsigned did_lseek : 1; /* set when lseek is called as a flag that
_write should check if we've moved
beyond EOF, zero filling or making
file sparse if so. */
- unsigned query_open : 3; /* open file without requesting either
+ unsigned query_open : 3; /* open file without requesting either
read or write access */
unsigned close_on_exec : 1; /* close-on-exec */
unsigned need_fork_fixup : 1; /* Set if need to fixup after fork. */
@@ -437,8 +437,8 @@ public:
virtual fhandler_base *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_base));
- fhandler_base *fh = new (ptr) fhandler_base (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_base));
+ fhandler_base *fh = new (ptr) fhandler_base (ptr);
copyto (fh);
return fh;
}
@@ -511,12 +511,12 @@ class fhandler_socket: public fhandler_base
char *peer_sun_path;
struct status_flags
{
- unsigned async_io : 1; /* async I/O */
+ unsigned async_io : 1; /* async I/O */
unsigned saw_shutdown_read : 1; /* Socket saw a SHUT_RD */
unsigned saw_shutdown_write : 1; /* Socket saw a SHUT_WR */
- unsigned saw_reuseaddr : 1; /* Socket saw SO_REUSEADDR call */
- unsigned listener : 1; /* listen called */
- unsigned connect_state : 2;
+ unsigned saw_reuseaddr : 1; /* Socket saw SO_REUSEADDR call */
+ unsigned listener : 1; /* listen called */
+ unsigned connect_state : 2;
public:
status_flags () :
async_io (0), saw_shutdown_read (0), saw_shutdown_write (0),
@@ -604,8 +604,8 @@ class fhandler_socket: public fhandler_base
fhandler_socket *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_socket));
- fhandler_socket *fh = new (ptr) fhandler_socket (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_socket));
+ fhandler_socket *fh = new (ptr) fhandler_socket (ptr);
copyto (fh);
return fh;
}
@@ -658,8 +658,8 @@ public:
virtual fhandler_base_overlapped *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_base_overlapped));
- fhandler_base_overlapped *fh = new (ptr) fhandler_base_overlapped (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_base_overlapped));
+ fhandler_base_overlapped *fh = new (ptr) fhandler_base_overlapped (ptr);
copyto (fh);
return fh;
}
@@ -690,9 +690,8 @@ public:
int __stdcall ftruncate (_off64_t, bool) __attribute__ ((regparm (3)));
int init (HANDLE, DWORD, mode_t);
static int create (fhandler_pipe *[2], unsigned, int);
- static int create_selectable (LPSECURITY_ATTRIBUTES, HANDLE&, HANDLE&, DWORD, const char * = NULL);
- friend class fhandler_fifo;
-
+ static int create_selectable (LPSECURITY_ATTRIBUTES, HANDLE *, HANDLE *, DWORD,
+ const char *, DWORD);
fhandler_pipe (void *) {}
void copyto (fhandler_base *x)
@@ -704,8 +703,8 @@ public:
fhandler_pipe *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pipe));
- fhandler_pipe *fh = new (ptr) fhandler_pipe (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pipe));
+ fhandler_pipe *fh = new (ptr) fhandler_pipe (ptr);
copyto (fh);
return fh;
}
@@ -713,31 +712,19 @@ public:
class fhandler_fifo: public fhandler_base_overlapped
{
- enum fifo_state
- {
- fifo_unknown,
- fifo_wait_for_client,
- fifo_wait_for_server,
- fifo_wait_for_next_client,
- fifo_eof,
- fifo_error,
- fifo_eintr,
- fifo_ok
- };
- fifo_state wait_state;
- HANDLE dummy_client;
- HANDLE open_nonserver (const char *, unsigned, LPSECURITY_ATTRIBUTES);
- bool wait (bool) __attribute__ ((regparm (1)));
- char *fifo_name (char *) __attribute__ ((regparm (2)));
+ HANDLE read_ready;
+ HANDLE write_ready;
+ bool wait (HANDLE) __attribute__ ((regparm (2)));
+ char *fifo_name (char *, const char *) __attribute__ ((regparm (2)));
public:
fhandler_fifo ();
- void __stdcall raw_read (void *, size_t&) __attribute__ ((regparm (3)));
- ssize_t __stdcall raw_write (const void *, size_t) __attribute__ ((regparm (3)));
int open (int, mode_t);
int close ();
int dup (fhandler_base *child, int);
bool isfifo () const { return true; }
void set_close_on_exec (bool val);
+ void __stdcall raw_read (void *ptr, size_t& ulen) __attribute__ ((regparm (3)));
+ void fixup_after_fork (HANDLE);
int __stdcall fstatvfs (struct statvfs *buf) __attribute__ ((regparm (2)));
select_record *select_read (select_stuff *);
select_record *select_write (select_stuff *);
@@ -754,8 +741,8 @@ public:
fhandler_fifo *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_fifo));
- fhandler_fifo *fh = new (ptr) fhandler_fifo (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_fifo));
+ fhandler_fifo *fh = new (ptr) fhandler_fifo (ptr);
copyto (fh);
return fh;
}
@@ -783,8 +770,8 @@ class fhandler_mailslot : public fhandler_base_overlapped
fhandler_mailslot *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_mailslot));
- fhandler_mailslot *fh = new (ptr) fhandler_mailslot (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_mailslot));
+ fhandler_mailslot *fh = new (ptr) fhandler_mailslot (ptr);
copyto (fh);
return fh;
}
@@ -832,8 +819,8 @@ class fhandler_dev_raw: public fhandler_base
fhandler_dev_raw *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_raw));
- fhandler_dev_raw *fh = new (ptr) fhandler_dev_raw (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_raw));
+ fhandler_dev_raw *fh = new (ptr) fhandler_dev_raw (ptr);
copyto (fh);
return fh;
}
@@ -892,8 +879,8 @@ class fhandler_dev_floppy: public fhandler_dev_raw
fhandler_dev_floppy *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_floppy));
- fhandler_dev_floppy *fh = new (ptr) fhandler_dev_floppy (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_floppy));
+ fhandler_dev_floppy *fh = new (ptr) fhandler_dev_floppy (ptr);
copyto (fh);
return fh;
}
@@ -940,8 +927,8 @@ class fhandler_dev_tape: public fhandler_dev_raw
fhandler_dev_tape *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_tape));
- fhandler_dev_tape *fh = new (ptr) fhandler_dev_tape (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_tape));
+ fhandler_dev_tape *fh = new (ptr) fhandler_dev_tape (ptr);
copyto (fh);
return fh;
}
@@ -1006,8 +993,8 @@ class fhandler_disk_file: public fhandler_base
fhandler_disk_file *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_disk_file));
- fhandler_disk_file *fh = new (ptr) fhandler_disk_file (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_disk_file));
+ fhandler_disk_file *fh = new (ptr) fhandler_disk_file (ptr);
copyto (fh);
return fh;
}
@@ -1044,8 +1031,8 @@ class fhandler_cygdrive: public fhandler_disk_file
fhandler_cygdrive *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_cygdrive));
- fhandler_cygdrive *fh = new (ptr) fhandler_cygdrive (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_cygdrive));
+ fhandler_cygdrive *fh = new (ptr) fhandler_cygdrive (ptr);
copyto (fh);
return fh;
}
@@ -1108,8 +1095,8 @@ class fhandler_serial: public fhandler_base
fhandler_serial *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_serial));
- fhandler_serial *fh = new (ptr) fhandler_serial (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_serial));
+ fhandler_serial *fh = new (ptr) fhandler_serial (ptr);
copyto (fh);
return fh;
}
@@ -1166,8 +1153,8 @@ class fhandler_termios: public fhandler_base
virtual fhandler_termios *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_termios));
- fhandler_termios *fh = new (ptr) fhandler_termios (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_termios));
+ fhandler_termios *fh = new (ptr) fhandler_termios (ptr);
copyto (fh);
return fh;
}
@@ -1365,8 +1352,8 @@ private:
fhandler_console *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_console));
- fhandler_console *fh = new (ptr) fhandler_console (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_console));
+ fhandler_console *fh = new (ptr) fhandler_console (ptr);
copyto (fh);
return fh;
}
@@ -1408,8 +1395,8 @@ class fhandler_pty_common: public fhandler_termios
virtual fhandler_pty_common *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pty_common));
- fhandler_pty_common *fh = new (ptr) fhandler_pty_common (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pty_common));
+ fhandler_pty_common *fh = new (ptr) fhandler_pty_common (ptr);
copyto (fh);
return fh;
}
@@ -1462,8 +1449,8 @@ class fhandler_pty_slave: public fhandler_pty_common
fhandler_pty_slave *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pty_slave));
- fhandler_pty_slave *fh = new (ptr) fhandler_pty_slave (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pty_slave));
+ fhandler_pty_slave *fh = new (ptr) fhandler_pty_slave (ptr);
copyto (fh);
return fh;
}
@@ -1520,8 +1507,8 @@ public:
fhandler_pty_master *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pty_master));
- fhandler_pty_master *fh = new (ptr) fhandler_pty_master (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_pty_master));
+ fhandler_pty_master *fh = new (ptr) fhandler_pty_master (ptr);
copyto (fh);
return fh;
}
@@ -1547,8 +1534,8 @@ class fhandler_dev_null: public fhandler_base
fhandler_dev_null *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_null));
- fhandler_dev_null *fh = new (ptr) fhandler_dev_null (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_null));
+ fhandler_dev_null *fh = new (ptr) fhandler_dev_null (ptr);
copyto (fh);
return fh;
}
@@ -1582,8 +1569,8 @@ class fhandler_dev_zero: public fhandler_base
fhandler_dev_zero *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_zero));
- fhandler_dev_zero *fh = new (ptr) fhandler_dev_zero (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_zero));
+ fhandler_dev_zero *fh = new (ptr) fhandler_dev_zero (ptr);
copyto (fh);
return fh;
}
@@ -1620,8 +1607,8 @@ class fhandler_dev_random: public fhandler_base
fhandler_dev_random *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_random));
- fhandler_dev_random *fh = new (ptr) fhandler_dev_random (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_random));
+ fhandler_dev_random *fh = new (ptr) fhandler_dev_random (ptr);
copyto (fh);
return fh;
}
@@ -1660,8 +1647,8 @@ class fhandler_dev_mem: public fhandler_base
fhandler_dev_mem *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_mem));
- fhandler_dev_mem *fh = new (ptr) fhandler_dev_mem (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_mem));
+ fhandler_dev_mem *fh = new (ptr) fhandler_dev_mem (ptr);
copyto (fh);
return fh;
}
@@ -1696,8 +1683,8 @@ class fhandler_dev_clipboard: public fhandler_base
fhandler_dev_clipboard *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_clipboard));
- fhandler_dev_clipboard *fh = new (ptr) fhandler_dev_clipboard (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_clipboard));
+ fhandler_dev_clipboard *fh = new (ptr) fhandler_dev_clipboard (ptr);
copyto (fh);
return fh;
}
@@ -1735,8 +1722,8 @@ class fhandler_windows: public fhandler_base
fhandler_windows *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_windows));
- fhandler_windows *fh = new (ptr) fhandler_windows (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_windows));
+ fhandler_windows *fh = new (ptr) fhandler_windows (ptr);
copyto (fh);
return fh;
}
@@ -1782,8 +1769,8 @@ class fhandler_dev_dsp: public fhandler_base
fhandler_dev_dsp *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_dsp));
- fhandler_dev_dsp *fh = new (ptr) fhandler_dev_dsp (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_dev_dsp));
+ fhandler_dev_dsp *fh = new (ptr) fhandler_dev_dsp (ptr);
copyto (fh);
return fh;
}
@@ -1833,8 +1820,8 @@ class fhandler_virtual : public fhandler_base
virtual fhandler_virtual *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_virtual));
- fhandler_virtual *fh = new (ptr) fhandler_virtual (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_virtual));
+ fhandler_virtual *fh = new (ptr) fhandler_virtual (ptr);
copyto (fh);
return fh;
}
@@ -1865,8 +1852,8 @@ class fhandler_proc: public fhandler_virtual
virtual fhandler_proc *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_proc));
- fhandler_proc *fh = new (ptr) fhandler_proc (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_proc));
+ fhandler_proc *fh = new (ptr) fhandler_proc (ptr);
copyto (fh);
return fh;
}
@@ -1901,8 +1888,8 @@ class fhandler_procsys: public fhandler_virtual
fhandler_procsys *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_procsys));
- fhandler_procsys *fh = new (ptr) fhandler_procsys (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_procsys));
+ fhandler_procsys *fh = new (ptr) fhandler_procsys (ptr);
copyto (fh);
return fh;
}
@@ -1930,8 +1917,8 @@ class fhandler_procsysvipc: public fhandler_proc
fhandler_procsysvipc *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_procsysvipc));
- fhandler_procsysvipc *fh = new (ptr) fhandler_procsysvipc (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_procsysvipc));
+ fhandler_procsysvipc *fh = new (ptr) fhandler_procsysvipc (ptr);
copyto (fh);
return fh;
}
@@ -1960,8 +1947,8 @@ class fhandler_netdrive: public fhandler_virtual
fhandler_netdrive *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_netdrive));
- fhandler_netdrive *fh = new (ptr) fhandler_netdrive (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_netdrive));
+ fhandler_netdrive *fh = new (ptr) fhandler_netdrive (ptr);
copyto (fh);
return fh;
}
@@ -2000,8 +1987,8 @@ class fhandler_registry: public fhandler_proc
fhandler_registry *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_registry));
- fhandler_registry *fh = new (ptr) fhandler_registry (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_registry));
+ fhandler_registry *fh = new (ptr) fhandler_registry (ptr);
copyto (fh);
return fh;
}
@@ -2032,8 +2019,8 @@ class fhandler_process: public fhandler_proc
fhandler_process *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_process));
- fhandler_process *fh = new (ptr) fhandler_process (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_process));
+ fhandler_process *fh = new (ptr) fhandler_process (ptr);
copyto (fh);
return fh;
}
@@ -2061,8 +2048,8 @@ class fhandler_procnet: public fhandler_proc
fhandler_procnet *clone ()
{
- void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_procnet));
- fhandler_procnet *fh = new (ptr) fhandler_procnet (ptr);
+ void *ptr = (void *) ccalloc (HEAP_FHANDLER, 1, sizeof (fhandler_procnet));
+ fhandler_procnet *fh = new (ptr) fhandler_procnet (ptr);
copyto (fh);
return fh;
}