summaryrefslogtreecommitdiff
path: root/lib/sh-quote.h
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2012-05-09 03:26:37 +0200
committerBruno Haible <bruno@clisp.org>2012-05-09 03:26:37 +0200
commite2c7c52c7cbc6299ccd66ef1b9568333266918f4 (patch)
treec5d5225aba7105882f6706b339d72bebe8c48fbe /lib/sh-quote.h
parente19862ceafbaaa82e8eb869e1c1ba45d0ecba515 (diff)
downloadgnulib-e2c7c52c7cbc6299ccd66ef1b9568333266918f4.tar.gz
sh-quote: Make C++ safe and allow multiple inclusion.
* lib/sh-quote.h: Add double-inclusion guard. For C++, wrap function declarations in extern "C".
Diffstat (limited to 'lib/sh-quote.h')
-rw-r--r--lib/sh-quote.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/sh-quote.h b/lib/sh-quote.h
index a5515d7910..12c3dd3c2d 100644
--- a/lib/sh-quote.h
+++ b/lib/sh-quote.h
@@ -15,12 +15,19 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#ifndef _SH_QUOTE_H
+#define _SH_QUOTE_H
+
/* When passing a command to a shell, we must quote the program name and
arguments, since Unix shells interpret characters like " ", "'", "<", ">",
"$" etc. in a special way. */
#include <stddef.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* Returns the number of bytes needed for the quoted string. */
extern size_t shell_quote_length (const char *string);
@@ -34,3 +41,9 @@ extern char * shell_quote (const char *string);
/* Returns a freshly allocated string containing all argument strings, quoted,
separated through spaces. */
extern char * shell_quote_argv (char * const *argv);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SH_QUOTE_H */