diff options
authorNeels Hofmeyr <neels@hofmeyr.de>2018-08-20 12:40:43 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2018-08-20 12:40:43 +0200
commitc649c3fe8e3e8b1c2d04f75563be0f1837607f5c (patch)
parent4db98554fd23d1f6f5dcb46c7908ce42c95d979e (diff)
use __FILE__, not __BASE_FILE__
The intention was to use the file's basename, but __BASE_FILE__ means "the root file that is being parsed and contains #include statements". If we had a function using __BASE_FILE__ and that was defined in an #included file, __BASE_FILE__ would indicate the first file where the #include is, and not the file where the function is defined. __BASE_FILE__ works for us because we don't ever include function definitions that log something, so __BASE_FILE__ always coincides with __FILE__ for our logging; but still __BASE_FILE__ is semantically the wrong constant. Related: OS#2740 Change-Id: Ic6d9dafc96c9d467ae53be2cd41adcf26a4e5125
1 files changed, 2 insertions, 2 deletions
diff --git a/include/osmocom/bsc/bsc_subscriber.h b/include/osmocom/bsc/bsc_subscriber.h
index a7b3e53fc..93b353935 100644
--- a/include/osmocom/bsc/bsc_subscriber.h
+++ b/include/osmocom/bsc/bsc_subscriber.h
@@ -37,8 +37,8 @@ struct bsc_subscr *_bsc_subscr_get(struct bsc_subscr *bsub,
const char *file, int line);
struct bsc_subscr *_bsc_subscr_put(struct bsc_subscr *bsub,
const char *file, int line);
-#define bsc_subscr_get(bsub) _bsc_subscr_get(bsub, __BASE_FILE__, __LINE__)
-#define bsc_subscr_put(bsub) _bsc_subscr_put(bsub, __BASE_FILE__, __LINE__)
+#define bsc_subscr_get(bsub) _bsc_subscr_get(bsub, __FILE__, __LINE__)
+#define bsc_subscr_put(bsub) _bsc_subscr_put(bsub, __FILE__, __LINE__)
void log_set_filter_bsc_subscr(struct log_target *target,
struct bsc_subscr *bsub);