On 18 February 2014 21:47, MauMau Wrote:

> > We already have two different versions of make_absolute_path() in the
> > tree
> > - one in src/backend/utils/init/miscinit.c and one in
> > src/test/regress/pg_regress.c.
> >
> > I don't think we need a third one.
> >
> > If we put it in port/ like this patch done, then we should make the
> > other callers use it. We might need one for frontend and one for
> > backend (I haven't looked into that much detail), but definitely the
> > one between pg_regress and pg_ctl should be shared.
> Agreed.  Sorry, I should have proposed the refactoring.
> Rajeev, could you refactor the code so that there is only one
> make_absolute_path()?  I think we can do like this:
> 1. Delete get_absolute_path() in src/port/path.c.
> 2. Delete make_absolute_path() in src/test/regress/pg_regress.c.
> 3. Move make_absolute_path() from src/backend/utils/init/miscinit.c to
> src/port/path.c, and delete the declaration in miscadmin.h.
> 4. Modify make_absolute_path() in path.c so that it can be used both in
> backend and frontend.  That is, surround the error message output with
> #ifdef FRONTEND ... #else ... #endif.  See some other source files in
> src/port.

Changed the patch as per your suggestion. 
Now only one version of make_absolute_path there defined in src/port/path.c

Found one small memory leak in the existing function 
fixed the same.

Please find the revised patch.

Thanks and Regards,
Kumar Rajeev Rastogi

Attachment: pgctl_win32service_rel_dbpath_v5.patch
Description: pgctl_win32service_rel_dbpath_v5.patch

Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:

Reply via email to