Commit graph

97 commits

Author SHA1 Message Date
lostd 24567ce6f5 Get rid of the LIFO history, an oldpath is enough 2014-10-23 18:10:45 +03:00
lostd 4b1b156a3b If you call makepath() with an absolute name it returns a copy of it 2014-10-23 17:53:26 +03:00
lostd 9407399230 Don't attempt to go back if on the relative root 2014-10-23 17:39:39 +03:00
lostd 8d4019f3aa Only use chdir(3) just before spawning a shell 2014-10-23 17:37:12 +03:00
lostd a606073296 Try to open file to see access errors on the status bar 2014-10-23 00:31:45 +03:00
lostd d84c3b1079 Only free history path if it is valid 2014-10-22 22:32:45 +03:00
lostd aa555a3b35 Keep history based on paths instead of positions 2014-10-22 21:05:59 +03:00
sin 8d018e620f realloc() behaves like free() if size is 0 2014-10-22 17:57:59 +01:00
sin 11ca2b408d Some systems define this already. 2014-10-22 17:41:16 +01:00
sin 1c467fce7a Style fix 2014-10-22 17:31:08 +01:00
sin 0e214e23b7 Call dentfree() when we quit 2014-10-22 17:28:27 +01:00
sin 789f9336f4 Rename testopendir() to canopendir() 2014-10-22 17:26:35 +01:00
sin 48f9c5a79d Test if we can back out/enter directories 2014-10-22 17:25:25 +01:00
sin aedec0ddf3 Add pushhist(), pophist() and forgethist() 2014-10-22 17:08:50 +01:00
sin 1183a9428f Save one level of indentation 2014-10-22 16:56:31 +01:00
sin b39da16920 Vertical spacing fixes 2014-10-22 16:55:26 +01:00
sin bc69021233 Save one level of indentation 2014-10-22 16:53:38 +01:00
sin 05957936f5 Use fstatat() wherever possible 2014-10-22 16:50:30 +01:00
sin b06a4d4eeb Initialize n' and dents' 2014-10-22 16:34:16 +01:00
sin ce599b8e6b Check getch() against ERR 2014-10-22 16:30:27 +01:00
sin c6614067e4 Remember to set dents to NULL 2014-10-22 16:29:18 +01:00
sin dbac1486c6 Include sys/wait.h for waitpid() 2014-10-22 16:27:08 +01:00
sin ce1fcfc7b8 Remove unused vars 2014-10-22 16:26:14 +01:00
sin 32bce991be Add dentfill() and dentfree() 2014-10-22 16:22:05 +01:00
lostd 5335be5832 Functions for setting and clearing the prompt 2014-10-22 17:54:13 +03:00
lostd 0809871aeb Free tmp string if dirname fails 2014-10-22 17:21:53 +03:00
sin 9bc4b92474 No need for a temporary buffer
xdirname() uses xstrdup() internally so we are safe to use that
pointer directly.
2014-10-22 15:14:33 +01:00
sin 35f3b250bb Only free() after xstrdup() 2014-10-22 15:05:14 +01:00
lostd 36cf4136b5 Add xdirname() again and give dirname(3) another chance 2014-10-22 17:02:15 +03:00
sin 577e0284a1 Remove xdirname()
dirname(3) should be shot to death.
2014-10-22 14:44:27 +01:00
sin ef7082b691 Use stat() instead of open() + fstat() 2014-10-22 14:33:17 +01:00
lostd 5aceade801 Forget all history on manual dir change 2014-10-22 16:30:14 +03:00
sin 75143cd93e Add xdirname() to avoid quirks with dirname(3) 2014-10-22 14:22:55 +01:00
sin abd301333d No need to manually strip trailing slashes
We use realpath() now.
2014-10-22 14:18:15 +01:00
sin 9d25101ad9 Add xstrdup() and xrealpath() 2014-10-22 14:15:27 +01:00
sin 7d4d60e778 Add xmalloc() + xrealloc() 2014-10-22 14:10:04 +01:00
sin 8326a75762 printerr() should print to stderr 2014-10-22 14:08:16 +01:00
sin 12106af2a7 Update outdated comment 2014-10-21 16:34:31 +01:00
sin 3808dde641 Always use realpath() and properly chdir() so relative changes via 'c' work 2014-10-21 15:53:12 +01:00
sin 56252bdf98 Add '*' suffix to executables 2014-10-21 15:36:23 +01:00
sin cfd530b167 Fix segfault in readln()
This could be reproduced simply by doing: [TAB] and backspacing
a few times.
2014-10-21 15:29:35 +01:00
sin 330adc995f No need to strdup() 2014-10-21 15:17:44 +01:00
sin 61bc5cd817 Add 'c' command to change into a destination directory by typing the path 2014-10-21 15:14:04 +01:00
sin 58f897fead Add missing break 2014-10-21 14:58:04 +01:00
sin 65b8aa2ab0 Add SEL_SH and bring out spawning of the shell in the main loop 2014-10-21 14:54:32 +01:00
sin d53e604cc2 Add '!' command to spawn a shell in cwd 2014-10-21 14:21:12 +01:00
sin 3bc66a43a7 Show hidden files if run as root 2014-10-21 12:03:53 +01:00
sin 65a01f9636 Include util.h and remove ifdef for Linux 2014-10-21 11:37:34 +01:00
sin d7d40366bd Remove unused global variable 2014-10-21 11:35:57 +01:00
sin d330033c4f Move some more config params to config.def.h 2014-10-21 11:35:08 +01:00