Thread

  1. Re: [BUGS] libpq causes segfault when share library unloaded

    Tom Lane <tgl@sss.pgh.pa.us> — 1999-11-05T01:16:38Z

    Jim Studt <jim@federated.com> writes:
    > libpq will define an environment variable for PGCLIENTENCODING if
    > none is specified.  If libpq is a shared library that is dynamically
    > loaded, and it is subsequently unloaded then it leaves an entry in
    > the environ array pointing into unmapped memory which will cause
    > a segfault the next time the environment array is traversed.
    
    Hmm.  Dynamically unloading a library can cause all sorts of problems,
    of course, but the particular code you're complaining of is pretty
    bletcherous anyway --- it's using a fixed-size buffer which seems mighty
    risky.  I'm inclined to make it put the putenv() string into a malloc'd
    buffer instead.  Would that solve the problem in your environment?
    
    			regards, tom lane