From a7ef3b5651477811d5b6b7a0e954ffbda6351d6d Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Fri, 1 Aug 2003 23:59:56 +0000 Subject: [PATCH] Added compare_string(). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4184 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../disk_device_manager/KDiskDeviceUtils.h | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h b/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h index 80661835a6..7bce6d07c7 100644 --- a/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h +++ b/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h @@ -55,6 +55,30 @@ set_string(char *&location, const char *newValue) return error; } +// compare_string +/*! \brief \c NULL aware strcmp(). + + \c NULL is considered the least of all strings. \c NULL equals \c NULL. + + \param str1 First string. + \param str2 Second string. + \return A value less than 0, if \a str1 is less than \a str2, + 0, if they are equal, or a value greater than 0, if + \a str1 is greater \a str2. +*/ +static inline +int +compare_string(const char *str1, const char *str2) +{ + if (str1 == NULL) { + if (str2 == NULL) + return 0; + return 1; + } else if (str2 == NULL) + return -1; + return strcmp(str1, str2); +} + // locking