aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_bif_ddll.c
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2014-03-21 15:22:21 +0100
committerIngela Anderton Andin <[email protected]>2014-03-21 15:22:21 +0100
commit425a75a11ea58125b67ad56f4ed3ca65370a3e72 (patch)
tree80fa08785954c031c985557e9179a62c10de8a5d /erts/emulator/beam/erl_bif_ddll.c
parent3c06b5b3cdde72453d97910889e38e91c1dd4870 (diff)
parent78ad5368f520c5fa6400d4f16909b23fe5225255 (diff)
downloadotp-425a75a11ea58125b67ad56f4ed3ca65370a3e72.tar.gz
otp-425a75a11ea58125b67ad56f4ed3ca65370a3e72.tar.bz2
otp-425a75a11ea58125b67ad56f4ed3ca65370a3e72.zip
Merge branch 'master' of git-server:otp
Diffstat (limited to 'erts/emulator/beam/erl_bif_ddll.c')
-rw-r--r--erts/emulator/beam/erl_bif_ddll.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_bif_ddll.c b/erts/emulator/beam/erl_bif_ddll.c
index 1728b200f7..56cd2ba04f 100644
--- a/erts/emulator/beam/erl_bif_ddll.c
+++ b/erts/emulator/beam/erl_bif_ddll.c
@@ -1548,8 +1548,10 @@ static int do_load_driver_entry(DE_Handle *dh, char *path, char *name)
switch (dp->extended_marker) {
case ERL_DRV_EXTENDED_MARKER:
- if (ERL_DRV_EXTENDED_MAJOR_VERSION != dp->major_version
- || ERL_DRV_EXTENDED_MINOR_VERSION < dp->minor_version) {
+ if (dp->major_version < ERL_DRV_MIN_REQUIRED_MAJOR_VERSION_ON_LOAD
+ || (ERL_DRV_EXTENDED_MAJOR_VERSION < dp->major_version
+ || (ERL_DRV_EXTENDED_MAJOR_VERSION == dp->major_version
+ && ERL_DRV_EXTENDED_MINOR_VERSION < dp->minor_version))) {
/* Incompatible driver version */
res = ERL_DE_LOAD_ERROR_INCORRECT_VERSION;
goto error;