]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - modulemanager
Send ERR_CANTUNLOADMODULE when unloading a module on reload fails.
[user/henk/code/inspircd.git] / modulemanager
index 50a86a7f7cac40b993396f4e77a5dccd63160962..1be9f52f90d3249000f722e6402c95ac059077a2 100755 (executable)
@@ -1,9 +1,10 @@
 #!/usr/bin/env perl
-
 #
 # InspIRCd -- Internet Relay Chat Daemon
 #
-#   Copyright (C) 2012-2017 Peter Powell <petpow@saberuk.com>
+#   Copyright (C) 2012-2014, 2017-2020 Sadie Powell <sadie@witchery.services>
+#   Copyright (C) 2012 Robby <robby@chatbelgie.be>
+#   Copyright (C) 2009-2010 Daniel De Graaf <danieldg@inspircd.org>
 #   Copyright (C) 2008-2009 Robin Burchell <robin+git@viroteck.net>
 #
 # This file is part of InspIRCd.  InspIRCd is free software: you can
@@ -123,8 +124,8 @@ while (<SRC>) {
 close SRC;
 
 # determine core version
-`./src/version.sh` =~ /InspIRCd-([0-9.]+)/ or die "Cannot determine inspircd version";
-$installed{core} = $1;
+my %version = get_version();
+$installed{core} = "$version{MAJOR}.$version{MINOR}.$version{PATCH}";
 for my $mod (keys %modules) {
        MODVER: for my $mver (keys %{$modules{$mod}}) {
                for my $dep (@{$modules{$mod}{$mver}{depends}}) {
@@ -137,7 +138,7 @@ for my $mod (keys %modules) {
        }
        delete $modules{$mod} unless %{$modules{$mod}};
 }
-$modules{core}{$1} = {
+$modules{core}{$installed{core}} = {
        url => 'NONE',
        depends => [],
        conflicts => [],
@@ -145,7 +146,7 @@ $modules{core}{$1} = {
 };
 
 # set up core module list
-for my $modname (<src/modules/m_*.cpp>) {
+for my $modname (<$RealDir/src/modules/m_*.cpp>) {
        my $mod = basename($modname, '.cpp');
        my $ver = getmodversion($mod) || '0.0';
        $ver =~ s/\$Rev: (.*) \$/$1/; # for storing revision in SVN