The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Clueless programmers
@ 2018-02-16 15:54 Rudi Blom
  2018-02-16 16:32 ` Larry McVoy
  0 siblings, 1 reply; 7+ messages in thread
From: Rudi Blom @ 2018-02-16 15:54 UTC (permalink / raw)


Clueless or careless?

A customer program worked for many years till one of the transaction
messages had a few bytes added.

Looking into it I discovered that the program had only worked because
the receive buffer was followed by another buffer which was used in a
later sequence. Only when also that buffer overflowed some critical
integers got overwritten and used as index in tables that gave a lot
of fun.

Well, as all here know, C is fun :-)


^ permalink raw reply	[flat|nested] 7+ messages in thread
* [TUHS] Clueless programmers
@ 2018-02-14 14:28 Ron Natalie
  2018-02-14 22:07 ` George Michaelson
  2018-02-15 11:43 ` Kevin Bowling
  0 siblings, 2 replies; 7+ messages in thread
From: Ron Natalie @ 2018-02-14 14:28 UTC (permalink / raw)



> already 20 years ago I met a guy (masters degree, university) who never freed dynamically allocated memory. He told me he is 'instantiating a object', but had no idea what an heap is, and what dynamically allocated memory means.

Years ago, I had an new programmer who I just couldn't teach.    He never understood the difference between an array and pointer, and apparently couldn't be bothered to learn.
After string him along for three months, I was on my way into his office to fire him when I found out he had quit, but not before he checked a bunch of drek into our source code control system.
I thought I backed all his commits out at the time.

Years later I was running "purify" on our product looking for memory leaks.   I found this small utility function that predated the source code control system leaking.   This, I thought was odd, as it had been there FOREVER and was well tested.   I brought up the source code system and checked it anyhow and found the afore mentioned programmer had checked in one change:   he deleted the "free" call in it.

I KNOW what happened.    He did something else to corrupt the malloc heap in his code and often this causes a core dump in a subsequent malloc/free call.   Apparently this was the place it struck him, so he just deleted the free call there.



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-02-16 16:32 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-16 15:54 [TUHS] Clueless programmers Rudi Blom
2018-02-16 16:32 ` Larry McVoy
  -- strict thread matches above, loose matches on Subject: below --
2018-02-14 14:28 Ron Natalie
2018-02-14 22:07 ` George Michaelson
2018-02-14 23:50   ` Dave Horsfall
2018-02-15  2:42     ` George Michaelson
2018-02-15 11:43 ` Kevin Bowling

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).