ChangeLog:
* inf-child.c (inf_child_fileio_pwrite): If pwrite fails, fall back to attempting lseek/write. (inf_child_fileio_pread): Likewise for pread. gdbserver/ChangeLog: * hostio.c (handle_pread): If pread fails, fall back to attempting lseek/read. (handle_pwrite): Likewise for pwrite.
This commit is contained in:
parent
399c99f739
commit
7c3270aec1
@ -1,3 +1,9 @@
|
||||
2012-08-02 Ulrich Weigand <ulrich.weigand@linaro.org>
|
||||
|
||||
* inf-child.c (inf_child_fileio_pwrite): If pwrite fails, fall back
|
||||
to attempting lseek/write.
|
||||
(inf_child_fileio_pread): Likewise for pread.
|
||||
|
||||
2012-08-02 Yao Qi <yao@codesourcery.com>
|
||||
|
||||
* dwarf2loc.c (entry_values_debug): Add 'unsigned'.
|
||||
|
@ -1,3 +1,9 @@
|
||||
2012-08-02 Ulrich Weigand <ulrich.weigand@linaro.org>
|
||||
|
||||
* hostio.c (handle_pread): If pread fails, fall back to attempting
|
||||
lseek/read.
|
||||
(handle_pwrite): Likewise for pwrite.
|
||||
|
||||
2012-08-01 Ulrich Weigand <ulrich.weigand@linaro.org>
|
||||
|
||||
* linux-arm-low.c (arm_linux_hw_point_initialize): Distinguish
|
||||
|
@ -328,10 +328,15 @@ handle_pread (char *own_buf, int *new_packet_len)
|
||||
#ifdef HAVE_PREAD
|
||||
ret = pread (fd, data, len, offset);
|
||||
#else
|
||||
ret = lseek (fd, offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = read (fd, data, len);
|
||||
ret = -1;
|
||||
#endif
|
||||
/* If we have no pread or it failed for this file, use lseek/read. */
|
||||
if (ret == -1)
|
||||
{
|
||||
ret = lseek (fd, offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = read (fd, data, len);
|
||||
}
|
||||
|
||||
if (ret == -1)
|
||||
{
|
||||
@ -376,10 +381,15 @@ handle_pwrite (char *own_buf, int packet_len)
|
||||
#ifdef HAVE_PWRITE
|
||||
ret = pwrite (fd, data, len, offset);
|
||||
#else
|
||||
ret = lseek (fd, offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = write (fd, data, len);
|
||||
ret = -1;
|
||||
#endif
|
||||
/* If we have no pwrite or it failed for this file, use lseek/write. */
|
||||
if (ret == -1)
|
||||
{
|
||||
ret = lseek (fd, offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = write (fd, data, len);
|
||||
}
|
||||
|
||||
if (ret == -1)
|
||||
{
|
||||
|
@ -265,10 +265,15 @@ inf_child_fileio_pwrite (int fd, const gdb_byte *write_buf, int len,
|
||||
#ifdef HAVE_PWRITE
|
||||
ret = pwrite (fd, write_buf, len, (long) offset);
|
||||
#else
|
||||
ret = lseek (fd, (long) offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = write (fd, write_buf, len);
|
||||
ret = -1;
|
||||
#endif
|
||||
/* If we have no pwrite or it failed for this file, use lseek/write. */
|
||||
if (ret == -1)
|
||||
{
|
||||
ret = lseek (fd, (long) offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = write (fd, write_buf, len);
|
||||
}
|
||||
|
||||
if (ret == -1)
|
||||
*target_errno = inf_child_errno_to_fileio_error (errno);
|
||||
@ -288,10 +293,15 @@ inf_child_fileio_pread (int fd, gdb_byte *read_buf, int len,
|
||||
#ifdef HAVE_PREAD
|
||||
ret = pread (fd, read_buf, len, (long) offset);
|
||||
#else
|
||||
ret = lseek (fd, (long) offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = read (fd, read_buf, len);
|
||||
ret = -1;
|
||||
#endif
|
||||
/* If we have no pread or it failed for this file, use lseek/read. */
|
||||
if (ret == -1)
|
||||
{
|
||||
ret = lseek (fd, (long) offset, SEEK_SET);
|
||||
if (ret != -1)
|
||||
ret = read (fd, read_buf, len);
|
||||
}
|
||||
|
||||
if (ret == -1)
|
||||
*target_errno = inf_child_errno_to_fileio_error (errno);
|
||||
|
Loading…
Reference in New Issue
Block a user