Several changes here to make it build on RHEL/CentOS 8:
- Replace outdated MEMSET() macro with (g)libc memset()
- Update Release field to use `git describe` just like LibAST
- Fix `make distcheck` by adding an uninstall-hook for src/gdb.scr
- At long last, remove the ancient RPM %changelog content
- Fix incompatibility with my traditional choices for CFLAGS
(-O0 -g3) and modern RHEL security/hardening goop which, due to
being implemented in the GCC optimizer, is rendered non-functional
by building with -O0!
- Rename backgrounds tarball so that it doesn't have the Eterm
version in its name since, shockingly, it never changes based on
the version of Eterm!
Revert previous patch generated by badnull.cocci script, and apply the new one.
The main difference is that assert and assert-like functions are not touched
anymore.
SVN revision: 51650
Using !! instead of != NULL results in significantly and unacceptably
less readable code, and I refuse to accept those changes.
Unfortunately, since they were all done at once, I have to revert the
whole thing. Oh well. :(
SVN revision: 51583
Apply badzero.cocci, badnull.coci and badnull2.cocci
This should convert all cases where there's a comparison to NULL to simpler
forms. This patch applies the following transformations:
code before patch ||code after patch
===============================================================
return a == NULL; return !a;
return a != NULL; return !!a;
func(a == NULL); func(!a);
func(a != NULL); func(!!a);
b = a == NULL; b = !a;
b = a != NULL; b = !!a;
b = a == NULL ? c : d; b = !a ? c : d;
b = a != NULL ? c : d; b = a ? c : d;
other cases:
a == NULL !a
a != NULL a
SVN revision: 51487
This causes the following change:
In script.c and term.c XA_CLIPBOARD(Xdisplay) used to expand to
XA_PRIMARY, i.e. the identifier of the "PRIMARY" atom, now it will
be the identifier of the "CLIPBOARD" atom.
SVN revision: 50969
(Correct) fix for CVE-2008-1692. Eterm no longer defaults to using
":0" for $DISPLAY due to the possibility that an attacker can create a
fake X server on a shared system, intercept the Eterm X connection,
and send fake keystrokes to the victim's Eterm to execute arbitrary
commands as that user.
The previous fix, while it did indeed correct the vulnerability, broke
the --display option. The original fix from Bernhard Link was more
correct, albeit not quite on target.
----------------------------------------------------------------------
SVN revision: 34574
Patch from Jason McCarver <slam@parasite.cc> to support -S/--sticky
option for "sticky" (i.e., present on all desktops) startup.
----------------------------------------------------------------------
SVN revision: 26874
Add fallback attempt to open display in case NEED_LINUX_HACK is set
and shouldn't be.
----------------------------------------------------------------------
SVN revision: 20766
Applied a fix from benny@sweetfactory.org for a typo in keysym
handling.
Fixed percent signs in menu files thanks to Yasufumi Haga
<yasufumi.haga@nifty.com>.
Fixed E IPC version check to work with old and new schemes.
----------------------------------------------------------------------
SVN revision: 16213
Attempt to fix autogen.sh for Gentoo and Solaris.
Detect and avoid E 0.17 faking E 0.16.x's IPC mechanisms.
----------------------------------------------------------------------
SVN revision: 15535
The benefits of being a passenger on a long road trip... The
beginnings of EWMH opacity (a la xcompmgr) support and (hopefully)
UTF-8 support. Both as yet untested.
----------------------------------------------------------------------
SVN revision: 12471
Small patch for building against libast 0.6.1.
Fixed compile error when enabling OFFIX_DND support pointed out by JG
Miller <miller@yoyo.org>.
----------------------------------------------------------------------
SVN revision: 12140
If $LANG refers to a UTF-8 or similar locale, remove that part. In
other words, en_US.utf8 becomes en_US instead.
----------------------------------------------------------------------
SVN revision: 10868
I redid the options variables and constants to try and make things
more standardized, and to make room for future toggles as well. This
should make David Lloyd a bit happier, 'cause now we can get his patch
in here. :)
Hopefully I didn't break anything....
SVN revision: 7370
This should clean up and consolidate the size-setting and reporting to
eliminate the discrepencies sometimes seen in Escreen mode when
coupled, for example, with --buttonbar 0. Azundris spotted this ages
ago, and I've been putting off fixing it. But it should be all
straightened out now.
SVN revision: 6416
LibAST 0.5 is now required to build Eterm. Hope everyone updated. By
the way, this fixes that old font-starts-with-a-hyphen bug along with
some compiler warnings the resulted from a change in the way the
ASSERT() macro worked.
SVN revision: 6407
My own Escreen updates, primarily for devoting a dedicated buttonbar
to Escreen's use. This keeps Escreen from trodding on your existing
buttonbar, if you have one. It's hard-coded to bottom-dock right
now; we'll look at configuration later. :-)
SVN revision: 6308
Ran reformat-code on the tree.
Also merged in Azundris' Escreen patch. It's disabled by default for
the moment pending further testing, but you can enable it manually by
defining ESCREEN.
SVN revision: 6202
There is now a new mechanism for dealing with the background image
collection, including a new update script. Please read the newly-
rewritten bg/README.backgrounds for details.
Also, I'm trying to flesh out the Contributors list in that file, but
my memory isn't cooperating. So if you contributed one of the
backgrounds, or know someone who did, please let me know.
SVN revision: 4810
Okay, first off, I removed 3 scaled backgrounds. See www.kainx.org or
my post to enlightenment-devel for details.
Second, I redid the default bindings for the mouse wheel. Basically,
the wheel alone will scroll by pages. Ctrl+wheel will scroll by pages
in groups of 5. Shift+wheel will scroll by a single line. If you
hold down the Alt key, the same combinations will work the same way,
but instead of scrolling within Eterm, they'll scroll the application
in the terminal (by sending PgUp/PgDn and up/down arrows). This works
in less, bash, and any other application which groks those keys.
I also added a --without-mousewheel option to configure that will turn
off the default scrollwheel bindings. Of course, you can always use
action bindings in the config file to bind/rebind these any way you
like.
While I was at it, I found and fixed a bug in the handling of the
Alt and Meta keys.
I added a scroll() function to the script stuff which allows you to
bind keys/buttons to scroll up and down. While I was at it, I added
comments to script.c for each function you can use.
And finally, the config file parser was moved to libast.
SVN revision: 4806
Finally got the selection stuff cleaned up. Hopefully this will be
the last time I have to deal with it for awhile. While I was at it,
I implemented incremental selection transfers. Unfortunately, it
doesn't seem like too many people support it. kedit doesn't, and it's
broken in Emacs (*grumble*). Works in gvim though.
SVN revision: 4784
VA bought some licenses for Insure++, so I've been using it to audit
Eterm. These are just the initial results of the collaboration; there
will most likely be more. So far things are looking pretty good. I
just wish Insure++ had more helpful messages. I'd really love to be
able to track down those reads/writes involving freed pointers that
it claims to have found in Imlib2....
I also had to try and make the build work without MMX. I did so; I
just hope it still works *with* MMX.... =)
SVN revision: 3895
Since someone wanted it, if no name is given but an exec line (the -e
option) is given, the name defaults to the first word in the exec line
instead of "Eterm-<version>". For example, Eterm -e ssh foo would get
the title "ssh". NOTE: Most Eterm themes already specify a name, so
this will not work with those themes.
SVN revision: 3886
Fixed the error message bug I noticed. There's also a big5 fix from
Chung-Yen Chang <candyz@cle.linux.org.tw>, and I got rid of some
tiny memory leaks in the X data, the first of which was noticed by
zed@linuxpower.org.
SVN revision: 3844
Massive reorganization/rewrite to libmej. It should now be 100%
independent of Eterm. There still may be some gremlins in the memory
debugging code, so don't use too high a number with --debug....
SVN revision: 3282
Marius Gedminas <mgedmin@takas.lt> reported a couple of issues back
when he was on his bug-spotting binge that I didn't have time to fix
just then. Well, now I've fixed them. ~/.Eterm/user.cfg will now
be found if there isn't a theme-specific one; this allows you to have
a single user.cfg which specifies some options you want all your
Eterms to have.
Along those same lines, the action code now searches for duplicate
bindings and changes the existing one rather than adding a new one
to the end of the list. This allows bindings in user.cfg to override
those in theme.cfg (as they should). Also, bindings are added in
reverse order, so newer ones (like in user.cfg) take precedence over
older ones (like in theme.cfg) if there is a conflict (e.g., if your
theme.cfg binds "anymod button2" and user.cfg binds "ctrl button2,"
user.cfg wins).
SVN revision: 2901
After getting sick of hearing people whining about the obscure error
messages that resulted from trying to build without pixmap support, I
hacked it until it at least built without it. I also added warnings
to configure.in so that people would know if that happened.
It's still not very happy running that way, which is something I need
to fix. But hopefully it will stop the whining.
Yeah, right. =P
SVN revision: 2590