postgres.git / summary / log / commit / refs

commit    5edeb574285ecbcc47f0b769a7e363404db0155b
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Thu May 12 06:08:45 2022 +0000
First released in: 15.0

    Add some missing PGDLLIMPORT markings
    
    Three variables in pqsignal.h (UnBlockSig, BlockSig and StartupBlockSig)
    were not marked with PGDLLIMPORT, as they are declared in a way that
    prevents mark_pgdllimport.pl to detect them.  These variables are
    redefined in a style more consistent with the other headers, allowing
    the script to find and mark them.
    
    PGDLLIMPORT was missing for __pg_log_level in logging.h, so add it
    back.  The marking got accidentally removed in 9a374b77, just after its
    addition in 8ec5694.
    
    While on it, add a comment in mark_pgdllimport.pl explaining what are
    the arguments needed by the script (aka a list of header paths).
    
    Reported-by: Andres Freund
    Discussion: https://postgr.es/m/20220506234924.6mxxotl3xl63db3l@alap3.anarazel.de


src/include/common/logging.h | 2 +- src/include/libpq/pqsignal.h | 6 +++--- src/tools/mark_pgdllimport.pl | 3 ++- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/include/common/logging.h b/src/include/common/logging.h index 9f426c32d61..2ab9f0ea502 100644 --- a/src/include/common/logging.h +++ b/src/include/common/logging.h @@ -51,7 +51,7 @@ enum pg_log_level /* * __pg_log_level is the minimum log level that will actually be shown. */ -extern enum pg_log_level __pg_log_level; +extern PGDLLIMPORT enum pg_log_level __pg_log_level; /* * A log message can have several parts. The primary message is required, diff --git a/src/include/libpq/pqsignal.h b/src/include/libpq/pqsignal.h index 016fc89bd92..41227a30e24 100644 --- a/src/include/libpq/pqsignal.h +++ b/src/include/libpq/pqsignal.h @@ -30,9 +30,9 @@ extern int pqsigsetmask(int mask); #define sigdelset(set, signum) (*(set) &= ~(sigmask(signum))) #endif /* WIN32 */ -extern sigset_t UnBlockSig, - BlockSig, - StartupBlockSig; +extern PGDLLIMPORT sigset_t UnBlockSig; +extern PGDLLIMPORT sigset_t BlockSig; +extern PGDLLIMPORT sigset_t StartupBlockSig; extern void pqinitmask(void); diff --git a/src/tools/mark_pgdllimport.pl b/src/tools/mark_pgdllimport.pl index 83b90db6ef9..834fcac5b54 100755 --- a/src/tools/mark_pgdllimport.pl +++ b/src/tools/mark_pgdllimport.pl @@ -12,7 +12,8 @@ # smart and may not catch all cases. # # It's probably a good idea to run pgindent on any files that this -# script modifies before committing. +# script modifies before committing. This script uses as arguments +# a list of the header files to scan for the markings. # # Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group # Portions Copyright (c) 1994, Regents of the University of California [parent: 6bfecf33f6ed]