| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
And use it to restore the old behaviour of vi and less: they reset
the cursor to the top of the buffer and clear it.
|
|
|
|
|
| |
Also improve erase_till_end_of_screen. Based on suggestions from
GitHub user avih.
|
|
|
|
|
| |
Clear the last line; move to cursor position before clearing screen
with ^L.
|
|
|
|
|
|
|
|
|
| |
Cursor positions in ANSI emulation were being treated as relative
to the start of the buffer. This resulted in the contents of the
buffer being lost when the screen was cleared.
Treat absolute cursor postions as screen-relative. You still lose
the part of the buffer that was on-screen.
|
|
|
|
|
|
|
|
| |
Correctly handle the case where an argument needs to be quoted
and has a backslash as its last character.
The issue was detected by the test "sed a cmd ended by double backslash"
in the BusyBox test suite.
|
| |
|
| |
|
|
|
|
| |
The WIN32 calls should be passed the root directory of the filesystem.
|
| |
|
|
|
|
|
|
|
|
| |
Windows' strftime prints the name of the timezone rather than the
timezone offset for '%z'. Add a hack to do it properly.
Windows' strftime also uses its own version of the timezone name for
'%Z'. A workaround for this is to set the TZ environment variable.
|
|
|
|
| |
Make 'ls c:' and 'ls c:/*' do the right thing.
|
|
|
|
|
|
|
| |
Commit 69f49ea imported a setitimer implementation from git. Since
setitimer isn't used at all in BusyBox it can be removed. The same
technique could be used to implement alarm but nothing in the WIN32
port uses that (yet).
|
|
|
|
|
|
|
|
|
|
| |
It seems that the cursor positioning escape sequence 'ESC[n;mH'
allows n and m values of 0 or 1 to represent the leftmost/topmost
position. Allow for this and also fix handling of missing values.
When the screen is cleared using FillConsoleOutputCharacterA it's
also necessary to make explicit calls to FillConsoleOutputAttribute
to reset attributes.
|
|
|
|
| |
Import inet_pton from gnulib and enable IPv6 support by default.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Commit fa147bd 'Use putenv to implement unsetenv/clearenv' allowed
BusyBox to run on ReactOS but broke it on Windows XP so it was
reverted.
It turns out that the same change is required on 64-bit Windows.
Reinstate the 'safe' environment manipulation code but make it a
configuration option. Add a config file for 64-bit Windows that
does the right thing.
|
|
|
|
|
| |
The third argument should be int. We only support positive pid
values.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
_cwait requires a process handle, not a pid.
|
|
|
|
|
| |
This makes it possible to enable the id and groups applets,
though the results they return are worthless.
|
|
|
|
| |
This allows the shell to expand ~user.
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are two changes from gnulib:
Treat a broken pipe as readable. If nc doesn't try to read from
the pipe it'll never find out it's broken.
Only allow console key press events to indicate that stdin is
readable. read_key leaves a key release event in the buffer
at the end of a shell command. This caused nc to block, thinking
that the console had input available.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
mingw64 handles globbing differently from mingw32. Add code to allow
globbing to be enabled. (By default mingw64 has globbing disabled,
though the default can be changed when it's compiled.)
Also change the configuration option from ENABLE_NOGLOB to
ENABLE_GLOBBING, because double negatives make me think too much.
The default is still for globbing to be disabled.
|
|
|
|
|
|
|
|
|
| |
The read-only attribute on a directory in Microsoft Windows is
quite different from write permission in POSIX. Modify rmdir(2)
and chmod(2) to provide more POSIX-like behaviour:
rmdir will remove a directory even if it's read-only
chmod won't make a directory read-only
|
|
|
|
|
|
|
|
|
|
|
| |
Changing the fake uid from 0 to 1000 uncovered a problem with file
access checks in test. Previously the tests were short-circuited
because it thought we were root. With a non-root user the tests
were performed, but the mode bits had been redefined for WIN32.
Also adjust the fake file mode returned by stat so that the user
and group modes are identical. Other users have the same modes
as user but without write permission.
|
| |
|
|
|
|
|
|
|
|
| |
Various fake POSIX routines returned different values for uid/gid:
getuid/getgid used 1, stat used 0 and getpwuid used 1000. Standardise
on 1000.
Also, add fake getgrgid.
|
| |
|
|
|
|
| |
This reverts commit fa147bd7ecb086f4fb9a4afea16b946693a822ce.
|
| |
|
|
|
|
|
| |
On POSIX platforms bb_got_signal is defined in libbb/signals.c; for
MinGW put the definition in win32/mingw.c. This is better than the
|
|
|
|
|
|
|
|
|
|
| |
noexec applets failed on ReactOS 0.3.17. This was because the
environment was being manipulated directly using the environ pointer.
Implementing unsetenv and clearenv using putenv fixes the problem.
WIN32 putenv doesn't allow environment variables to have empty
values. This was the case before and it's still the case after
this change. Shell variables are fine.
|
|
|
|
|
|
|
|
|
|
|
| |
Microsoft Windows has a strange issue with access permissions such that
mkdir will sometimes return EACESS for an existing directory. This is
mentioned here:
http://www.apijunkie.com/APIJunkie/blog/post/2009/12/22/_mkdir-C-runtime-library-function-might-return-unexpected-error-values.aspx
This was causing mkdir -p to fail on a particular machine. Ignoring the
EACCES error if the directory exists fixes the problem.
|
|
|
|
|
|
| |
This may address:
https://github.com/rmyorston/busybox-w32/issues/25
|
| |
|
|
|
|
|
|
| |
Microsoft Windows ignores the read-only attribute on directories and
has no equivalent to the Unix execute permission on directories.
Treat all directories as writable and searchable.
|
|
|
|
| |
This also fixes piping output to a command in awk.
|
| |
|
|
|
|
|
|
|
| |
Conflicts:
debianutils/which.c
editors/vi.c
libbb/executable.c
|
| |
|
| |
|
|
|
|
|
| |
These escape sequences are required for proper handling of line
editing when the input exceeds the console width.
|
|
|
|
|
|
| |
It seems that passing control characters through OemToCharBuff is
not a good idea: some of them end up in the top half of the
codepage.
|