From 8e844f63e9c2baad1459b9dfb3103420caf9cb1a Mon Sep 17 00:00:00 2001 From: Philippe Saint-Pierre Date: Sun, 27 Nov 2011 13:24:43 -0500 Subject: [PATCH] Fix bogus argument validation * The comparaison couldn't ever not match. Based on the comment above the function, I made it so that flags must contain at least one of B_WATCH_NAME, B_WATCH_STAT or B_WATCH_ATTR CID 2586 --- src/kits/storage/NodeMonitor.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/kits/storage/NodeMonitor.cpp b/src/kits/storage/NodeMonitor.cpp index 7870580ce5..7073ff9459 100644 --- a/src/kits/storage/NodeMonitor.cpp +++ b/src/kits/storage/NodeMonitor.cpp @@ -38,8 +38,8 @@ status_t watch_volume(dev_t volume, uint32 flags, BMessenger target) { - if ((flags | B_WATCH_NAME) == 0 && (flags | B_WATCH_STAT) - && (flags | B_WATCH_ATTR)) + if ((flags & B_WATCH_NAME) == 0 && (flags & B_WATCH_STAT) == 0 + && (flags & B_WATCH_ATTR) == 0) return B_BAD_VALUE; flags |= B_WATCH_VOLUME;