diff --git a/pmd-go/pom.xml b/pmd-go/pom.xml index f0f759cfe6..e2e5a18001 100644 --- a/pmd-go/pom.xml +++ b/pmd-go/pom.xml @@ -43,10 +43,20 @@ junit test + + org.junit.vintage + junit-vintage-engine + test + net.sourceforge.pmd pmd-test test + + net.sourceforge.pmd + pmd-lang-test + test + diff --git a/pmd-go/src/test/java/net/sourceforge/pmd/cpd/EdgeCasesTokenizerTest.java b/pmd-go/src/test/java/net/sourceforge/pmd/cpd/EdgeCasesTokenizerTest.java deleted file mode 100644 index 71b085a34e..0000000000 --- a/pmd-go/src/test/java/net/sourceforge/pmd/cpd/EdgeCasesTokenizerTest.java +++ /dev/null @@ -1,29 +0,0 @@ -/** - * BSD-style license; for more info see http://pmd.sourceforge.net/license.html - */ - -package net.sourceforge.pmd.cpd; - -import java.io.IOException; -import java.nio.charset.StandardCharsets; - -import org.apache.commons.io.IOUtils; -import org.junit.Test; - -public class EdgeCasesTokenizerTest { - - private String getSampleCode(final String filename) throws IOException { - return IOUtils.toString(GoTokenizer.class.getResourceAsStream(filename), StandardCharsets.UTF_8); - } - - @Test - public void testEscapedBackSlash() throws IOException { - // See https://github.com/pmd/pmd/issues/1751 - final String filename = "issue1751.go"; - final GoTokenizer tokenizer = new GoTokenizer(); - final SourceCode sourceCode = new SourceCode(new SourceCode.StringCodeLoader(getSampleCode(filename), filename)); - - final Tokens tokens = new Tokens(); - tokenizer.tokenize(sourceCode, tokens); // it should simply not fail - } -} diff --git a/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoCPDTokenizerTest.java b/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoCPDTokenizerTest.java deleted file mode 100644 index e46866d012..0000000000 --- a/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoCPDTokenizerTest.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * BSD-style license; for more info see http://pmd.sourceforge.net/license.html - */ - -package net.sourceforge.pmd.cpd; - -import java.io.IOException; - -import org.apache.commons.io.IOUtils; -import org.junit.Before; -import org.junit.Test; - -import net.sourceforge.pmd.testframework.AbstractTokenizerTest; - -public class GoCPDTokenizerTest extends AbstractTokenizerTest { - - private static final String FILENAME = "hello.go"; - - @Before - @Override - public void buildTokenizer() throws IOException { - this.tokenizer = new GoTokenizer(); - this.sourceCode = new SourceCode(new SourceCode.StringCodeLoader(this.getSampleCode(), FILENAME)); - } - - @Override - public String getSampleCode() throws IOException { - return IOUtils.toString(GoTokenizer.class.getResourceAsStream(FILENAME)); - } - - @Test - public void tokenizeTest() throws IOException { - this.expectedTokenCount = 23; - super.tokenizeTest(); - } -} diff --git a/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoTokenizerTest.java b/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoTokenizerTest.java index 7e34d93981..309867e995 100644 --- a/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoTokenizerTest.java +++ b/pmd-go/src/test/java/net/sourceforge/pmd/cpd/GoTokenizerTest.java @@ -4,33 +4,40 @@ package net.sourceforge.pmd.cpd; -import java.io.IOException; +import java.util.Properties; -import org.apache.commons.io.IOUtils; -import org.junit.Before; import org.junit.Test; -import net.sourceforge.pmd.testframework.AbstractTokenizerTest; +import net.sourceforge.pmd.cpd.test.CpdTextComparisonTest; -public class GoTokenizerTest extends AbstractTokenizerTest { +public class GoTokenizerTest extends CpdTextComparisonTest { - private static final String FILENAME = "btrfs.go"; - - @Before - @Override - public void buildTokenizer() throws IOException { - this.tokenizer = new GoTokenizer(); - this.sourceCode = new SourceCode(new SourceCode.StringCodeLoader(this.getSampleCode(), FILENAME)); + public GoTokenizerTest() { + super(".go"); } @Override - public String getSampleCode() throws IOException { - return IOUtils.toString(GoTokenizer.class.getResourceAsStream(FILENAME)); + public Tokenizer newTokenizer(Properties properties) { + return new GoTokenizer(); + } + + @Override + protected String getResourcePrefix() { + return "../lang/go/cpd/testdata"; } @Test - public void tokenizeTest() throws IOException { - this.expectedTokenCount = 3517; - super.tokenizeTest(); + public void simpleTest() { + doTest("hello"); + } + + @Test + public void bigFileTest() { + doTest("btrfs"); + } + + @Test + public void testIssue1751() { + doTest("issue-1751"); } } diff --git a/pmd-go/src/test/resources/net/sourceforge/pmd/cpd/btrfs.go b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/btrfs.go similarity index 100% rename from pmd-go/src/test/resources/net/sourceforge/pmd/cpd/btrfs.go rename to pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/btrfs.go diff --git a/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/btrfs.txt b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/btrfs.txt new file mode 100644 index 0000000000..4fd7edaea6 --- /dev/null +++ b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/btrfs.txt @@ -0,0 +1,4047 @@ + [Image] or [Truncated image[ Bcol Ecol +L9 + [package] 1 7 + [btrfs] 9 13 +L21 + [import] 1 6 + ["C"] 8 10 +L23 + [import] 1 6 + [(] 8 8 +L24 + ["fmt"] 2 6 +L25 + ["io/ioutil"] 2 12 +L26 + ["math"] 2 7 +L27 + ["os"] 2 5 +L28 + ["path"] 2 7 +L29 + ["path/filepath"] 2 16 +L30 + ["strconv"] 2 10 +L31 + ["strings"] 2 10 +L32 + ["sync"] 2 7 +L33 + ["unsafe"] 2 9 +L35 + ["github.com/docker/docker/daemon/g[ 2 46 +L36 + ["github.com/docker/docker/pkg/cont[ 2 43 +L37 + ["github.com/docker/docker/pkg/idto[ 2 39 +L38 + ["github.com/docker/docker/pkg/moun[ 2 37 +L39 + ["github.com/docker/docker/pkg/pars[ 2 39 +L40 + ["github.com/docker/docker/pkg/syst[ 2 38 +L41 + ["github.com/docker/go-units"] 2 29 +L42 + ["github.com/opencontainers/selinux[ 2 53 +L43 + ["github.com/pkg/errors"] 2 24 +L44 + ["github.com/sirupsen/logrus"] 2 29 +L45 + ["golang.org/x/sys/unix"] 2 24 +L46 + [)] 1 1 +L48 + [func] 1 4 + [init] 6 9 + [(] 10 10 + [)] 11 11 + [{] 13 13 +L49 + [graphdriver] 2 12 + [.] 13 13 + [Register] 14 21 + [(] 22 22 + ["btrfs"] 23 29 + [,] 30 30 + [Init] 32 35 + [)] 36 36 +L50 + [}] 1 1 +L52 + [type] 1 4 + [btrfsOptions] 6 17 + [struct] 19 24 + [{] 26 26 +L53 + [minSpace] 2 9 + [uint64] 11 16 +L54 + [size] 2 5 + [uint64] 11 16 +L55 + [}] 1 1 +L59 + [func] 1 4 + [Init] 6 9 + [(] 10 10 + [home] 11 14 + [string] 16 21 + [,] 22 22 + [options] 24 30 + [\[] 32 32 + [\]] 33 33 + [string] 34 39 + [,] 40 40 + [uidMaps] 42 48 + [,] 49 49 + [gidMaps] 51 57 + [\[] 59 59 + [\]] 60 60 + [idtools] 61 67 + [.] 68 68 + [IDMap] 69 73 + [)] 74 74 + [(] 76 76 + [graphdriver] 77 87 + [.] 88 88 + [Driver] 89 94 + [,] 95 95 + [error] 97 101 + [)] 102 102 + [{] 104 104 +L65 + [testdir] 2 8 + [:=] 10 11 + [home] 13 16 +L66 + [if] 2 3 + [_] 5 5 + [,] 6 6 + [err] 8 10 + [:=] 12 13 + [os] 15 16 + [.] 17 17 + [Stat] 18 21 + [(] 22 22 + [testdir] 23 29 + [)] 30 30 + [;] 31 31 + [os] 33 34 + [.] 35 35 + [IsNotExist] 36 45 + [(] 46 46 + [err] 47 49 + [)] 50 50 + [{] 52 52 +L67 + [testdir] 3 9 + [=] 11 11 + [filepath] 13 20 + [.] 21 21 + [Dir] 22 24 + [(] 25 25 + [testdir] 26 32 + [)] 33 33 +L68 + [}] 2 2 +L70 + [fsMagic] 2 8 + [,] 9 9 + [err] 11 13 + [:=] 15 16 + [graphdriver] 18 28 + [.] 29 29 + [GetFSMagic] 30 39 + [(] 40 40 + [testdir] 41 47 + [)] 48 48 +L71 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L72 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [err] 15 17 +L73 + [}] 2 2 +L75 + [if] 2 3 + [fsMagic] 5 11 + [!=] 13 14 + [graphdriver] 16 26 + [.] 27 27 + [FsMagicBtrfs] 28 39 + [{] 41 41 +L76 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [graphdriver] 15 25 + [.] 26 26 + [ErrPrerequisites] 27 42 +L77 + [}] 2 2 +L79 + [rootUID] 2 8 + [,] 9 9 + [rootGID] 11 17 + [,] 18 18 + [err] 20 22 + [:=] 24 25 + [idtools] 27 33 + [.] 34 34 + [GetRootUIDGID] 35 47 + [(] 48 48 + [uidMaps] 49 55 + [,] 56 56 + [gidMaps] 58 64 + [)] 65 65 +L80 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L81 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [err] 15 17 +L82 + [}] 2 2 +L83 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [idtools] 12 18 + [.] 19 19 + [MkdirAllAndChown] 20 35 + [(] 36 36 + [home] 37 40 + [,] 41 41 + [0700] 43 46 + [,] 47 47 + [idtools] 49 55 + [.] 56 56 + [Identity] 57 64 + [{] 65 65 + [UID] 66 68 + [:] 69 69 + [rootUID] 71 77 + [,] 78 78 + [GID] 80 82 + [:] 83 83 + [rootGID] 85 91 + [}] 92 92 + [)] 93 93 + [;] 94 94 + [err] 96 98 + [!=] 100 101 + [nil] 103 105 + [{] 107 107 +L84 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [err] 15 17 +L85 + [}] 2 2 +L87 + [opt] 2 4 + [,] 5 5 + [userDiskQuota] 7 19 + [,] 20 20 + [err] 22 24 + [:=] 26 27 + [parseOptions] 29 40 + [(] 41 41 + [options] 42 48 + [)] 49 49 +L88 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L89 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [err] 15 17 +L90 + [}] 2 2 +L96 + [err] 2 4 + [=] 6 6 + [mount] 8 12 + [.] 13 13 + [MakeMount] 14 22 + [(] 23 23 + [home] 24 27 + [)] 28 28 +L97 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L98 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [errors] 15 20 + [.] 21 21 + [Wrapf] 22 26 + [(] 27 27 + [err] 28 30 + [,] 31 31 + ["failed to make %s a mount"] 33 59 + [,] 60 60 + [home] 62 65 + [)] 66 66 +L99 + [}] 2 2 +L101 + [driver] 2 7 + [:=] 9 10 + [&] 12 12 + [Driver] 13 18 + [{] 19 19 +L102 + [home] 3 6 + [:] 7 7 + [home] 12 15 + [,] 16 16 +L103 + [uidMaps] 3 9 + [:] 10 10 + [uidMaps] 12 18 + [,] 19 19 +L104 + [gidMaps] 3 9 + [:] 10 10 + [gidMaps] 12 18 + [,] 19 19 +L105 + [options] 3 9 + [:] 10 10 + [opt] 12 14 + [,] 15 15 +L106 + [}] 2 2 +L108 + [if] 2 3 + [userDiskQuota] 5 17 + [{] 19 19 +L109 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [driver] 13 18 + [.] 19 19 + [subvolEnableQuota] 20 36 + [(] 37 37 + [)] 38 38 + [;] 39 39 + [err] 41 43 + [!=] 45 46 + [nil] 48 50 + [{] 52 52 +L110 + [return] 4 9 + [nil] 11 13 + [,] 14 14 + [err] 16 18 +L111 + [}] 3 3 +L112 + [}] 2 2 +L114 + [return] 2 7 + [graphdriver] 9 19 + [.] 20 20 + [NewNaiveDiffDriver] 21 38 + [(] 39 39 + [driver] 40 45 + [,] 46 46 + [uidMaps] 48 54 + [,] 55 55 + [gidMaps] 57 63 + [)] 64 64 + [,] 65 65 + [nil] 67 69 +L115 + [}] 1 1 +L117 + [func] 1 4 + [parseOptions] 6 17 + [(] 18 18 + [opt] 19 21 + [\[] 23 23 + [\]] 24 24 + [string] 25 30 + [)] 31 31 + [(] 33 33 + [btrfsOptions] 34 45 + [,] 46 46 + [bool] 48 51 + [,] 52 52 + [error] 54 58 + [)] 59 59 + [{] 61 61 +L118 + [var] 2 4 + [options] 6 12 + [btrfsOptions] 14 25 +L119 + [userDiskQuota] 2 14 + [:=] 16 17 + [false] 19 23 +L120 + [for] 2 4 + [_] 6 6 + [,] 7 7 + [option] 9 14 + [:=] 16 17 + [range] 19 23 + [opt] 25 27 + [{] 29 29 +L121 + [key] 3 5 + [,] 6 6 + [val] 8 10 + [,] 11 11 + [err] 13 15 + [:=] 17 18 + [parsers] 20 26 + [.] 27 27 + [ParseKeyValueOpt] 28 43 + [(] 44 44 + [option] 45 50 + [)] 51 51 +L122 + [if] 3 4 + [err] 6 8 + [!=] 10 11 + [nil] 13 15 + [{] 17 17 +L123 + [return] 4 9 + [options] 11 17 + [,] 18 18 + [userDiskQuota] 20 32 + [,] 33 33 + [err] 35 37 +L124 + [}] 3 3 +L125 + [key] 3 5 + [=] 7 7 + [strings] 9 15 + [.] 16 16 + [ToLower] 17 23 + [(] 24 24 + [key] 25 27 + [)] 28 28 +L126 + [switch] 3 8 + [key] 10 12 + [{] 14 14 +L127 + [case] 3 6 + ["btrfs.min_space"] 8 24 + [:] 25 25 +L128 + [minSpace] 4 11 + [,] 12 12 + [err] 14 16 + [:=] 18 19 + [units] 21 25 + [.] 26 26 + [RAMInBytes] 27 36 + [(] 37 37 + [val] 38 40 + [)] 41 41 +L129 + [if] 4 5 + [err] 7 9 + [!=] 11 12 + [nil] 14 16 + [{] 18 18 +L130 + [return] 5 10 + [options] 12 18 + [,] 19 19 + [userDiskQuota] 21 33 + [,] 34 34 + [err] 36 38 +L131 + [}] 4 4 +L132 + [userDiskQuota] 4 16 + [=] 18 18 + [true] 20 23 +L133 + [options] 4 10 + [.] 11 11 + [minSpace] 12 19 + [=] 21 21 + [uint64] 23 28 + [(] 29 29 + [minSpace] 30 37 + [)] 38 38 +L134 + [default] 3 9 + [:] 10 10 +L135 + [return] 4 9 + [options] 11 17 + [,] 18 18 + [userDiskQuota] 20 32 + [,] 33 33 + [fmt] 35 37 + [.] 38 38 + [Errorf] 39 44 + [(] 45 45 + ["Unknown option %s"] 46 64 + [,] 65 65 + [key] 67 69 + [)] 70 70 +L136 + [}] 3 3 +L137 + [}] 2 2 +L138 + [return] 2 7 + [options] 9 15 + [,] 16 16 + [userDiskQuota] 18 30 + [,] 31 31 + [nil] 33 35 +L139 + [}] 1 1 +L142 + [type] 1 4 + [Driver] 6 11 + [struct] 13 18 + [{] 20 20 +L144 + [home] 2 5 + [string] 15 20 +L145 + [uidMaps] 2 8 + [\[] 15 15 + [\]] 16 16 + [idtools] 17 23 + [.] 24 24 + [IDMap] 25 29 +L146 + [gidMaps] 2 8 + [\[] 15 15 + [\]] 16 16 + [idtools] 17 23 + [.] 24 24 + [IDMap] 25 29 +L147 + [options] 2 8 + [btrfsOptions] 15 26 +L148 + [quotaEnabled] 2 13 + [bool] 15 18 +L149 + [once] 2 5 + [sync] 15 18 + [.] 19 19 + [Once] 20 23 +L150 + [}] 1 1 +L153 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [String] 18 23 + [(] 24 24 + [)] 25 25 + [string] 27 32 + [{] 34 34 +L154 + [return] 2 7 + ["btrfs"] 9 15 +L155 + [}] 1 1 +L160 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Status] 18 23 + [(] 24 24 + [)] 25 25 + [\[] 27 27 + [\]] 28 28 + [\[] 29 29 + [2] 30 30 + [\]] 31 31 + [string] 32 37 + [{] 39 39 +L161 + [status] 2 7 + [:=] 9 10 + [\[] 12 12 + [\]] 13 13 + [\[] 14 14 + [2] 15 15 + [\]] 16 16 + [string] 17 22 + [{] 23 23 + [}] 24 24 +L162 + [if] 2 3 + [bv] 5 6 + [:=] 8 9 + [btrfsBuildVersion] 11 27 + [(] 28 28 + [)] 29 29 + [;] 30 30 + [bv] 32 33 + [!=] 35 36 + ["-"] 38 40 + [{] 42 42 +L163 + [status] 3 8 + [=] 10 10 + [append] 12 17 + [(] 18 18 + [status] 19 24 + [,] 25 25 + [\[] 27 27 + [2] 28 28 + [\]] 29 29 + [string] 30 35 + [{] 36 36 + ["Build Version"] 37 51 + [,] 52 52 + [bv] 54 55 + [}] 56 56 + [)] 57 57 +L164 + [}] 2 2 +L165 + [if] 2 3 + [lv] 5 6 + [:=] 8 9 + [btrfsLibVersion] 11 25 + [(] 26 26 + [)] 27 27 + [;] 28 28 + [lv] 30 31 + [!=] 33 34 + [-] 36 36 + [1] 37 37 + [{] 39 39 +L166 + [status] 3 8 + [=] 10 10 + [append] 12 17 + [(] 18 18 + [status] 19 24 + [,] 25 25 + [\[] 27 27 + [2] 28 28 + [\]] 29 29 + [string] 30 35 + [{] 36 36 + ["Library Version"] 37 53 + [,] 54 54 + [fmt] 56 58 + [.] 59 59 + [Sprintf] 60 66 + [(] 67 67 + ["%d"] 68 71 + [,] 72 72 + [lv] 74 75 + [)] 76 76 + [}] 77 77 + [)] 78 78 +L167 + [}] 2 2 +L168 + [return] 2 7 + [status] 9 14 +L169 + [}] 1 1 +L172 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [GetMetadata] 18 28 + [(] 29 29 + [id] 30 31 + [string] 33 38 + [)] 39 39 + [(] 41 41 + [map] 42 44 + [\[] 45 45 + [string] 46 51 + [\]] 52 52 + [string] 53 58 + [,] 59 59 + [error] 61 65 + [)] 66 66 + [{] 68 68 +L173 + [return] 2 7 + [nil] 9 11 + [,] 12 12 + [nil] 14 16 +L174 + [}] 1 1 +L177 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Cleanup] 18 24 + [(] 25 25 + [)] 26 26 + [error] 28 32 + [{] 34 34 +L178 + [err] 2 4 + [:=] 6 7 + [d] 9 9 + [.] 10 10 + [subvolDisableQuota] 11 28 + [(] 29 29 + [)] 30 30 +L179 + [umountErr] 2 10 + [:=] 12 13 + [mount] 15 19 + [.] 20 20 + [Unmount] 21 27 + [(] 28 28 + [d] 29 29 + [.] 30 30 + [home] 31 34 + [)] 35 35 +L182 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L183 + [return] 3 8 + [err] 10 12 +L184 + [}] 2 2 +L186 + [if] 2 3 + [umountErr] 5 13 + [!=] 15 16 + [nil] 18 20 + [{] 22 22 +L187 + [return] 3 8 + [errors] 10 15 + [.] 16 16 + [Wrapf] 17 21 + [(] 22 22 + [umountErr] 23 31 + [,] 32 32 + ["error unmounting %s"] 34 54 + [,] 55 55 + [d] 57 57 + [.] 58 58 + [home] 59 62 + [)] 63 63 +L188 + [}] 2 2 +L190 + [return] 2 7 + [nil] 9 11 +L191 + [}] 1 1 +L193 + [func] 1 4 + [free] 6 9 + [(] 10 10 + [p] 11 11 + [*] 13 13 + [C] 14 14 + [.] 15 15 + [char] 16 19 + [)] 20 20 + [{] 22 22 +L194 + [C] 2 2 + [.] 3 3 + [free] 4 7 + [(] 8 8 + [unsafe] 9 14 + [.] 15 15 + [Pointer] 16 22 + [(] 23 23 + [p] 24 24 + [)] 25 25 + [)] 26 26 +L195 + [}] 1 1 +L197 + [func] 1 4 + [openDir] 6 12 + [(] 13 13 + [path] 14 17 + [string] 19 24 + [)] 25 25 + [(] 27 27 + [*] 28 28 + [C] 29 29 + [.] 30 30 + [DIR] 31 33 + [,] 34 34 + [error] 36 40 + [)] 41 41 + [{] 43 43 +L198 + [Cpath] 2 6 + [:=] 8 9 + [C] 11 11 + [.] 12 12 + [CString] 13 19 + [(] 20 20 + [path] 21 24 + [)] 25 25 +L199 + [defer] 2 6 + [free] 8 11 + [(] 12 12 + [Cpath] 13 17 + [)] 18 18 +L201 + [dir] 2 4 + [:=] 6 7 + [C] 9 9 + [.] 10 10 + [opendir] 11 17 + [(] 18 18 + [Cpath] 19 23 + [)] 24 24 +L202 + [if] 2 3 + [dir] 5 7 + [==] 9 10 + [nil] 12 14 + [{] 16 16 +L203 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [fmt] 15 17 + [.] 18 18 + [Errorf] 19 24 + [(] 25 25 + ["Can't open dir"] 26 41 + [)] 42 42 +L204 + [}] 2 2 +L205 + [return] 2 7 + [dir] 9 11 + [,] 12 12 + [nil] 14 16 +L206 + [}] 1 1 +L208 + [func] 1 4 + [closeDir] 6 13 + [(] 14 14 + [dir] 15 17 + [*] 19 19 + [C] 20 20 + [.] 21 21 + [DIR] 22 24 + [)] 25 25 + [{] 27 27 +L209 + [if] 2 3 + [dir] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L210 + [C] 3 3 + [.] 4 4 + [closedir] 5 12 + [(] 13 13 + [dir] 14 16 + [)] 17 17 +L211 + [}] 2 2 +L212 + [}] 1 1 +L214 + [func] 1 4 + [getDirFd] 6 13 + [(] 14 14 + [dir] 15 17 + [*] 19 19 + [C] 20 20 + [.] 21 21 + [DIR] 22 24 + [)] 25 25 + [uintptr] 27 33 + [{] 35 35 +L215 + [return] 2 7 + [uintptr] 9 15 + [(] 16 16 + [C] 17 17 + [.] 18 18 + [dirfd] 19 23 + [(] 24 24 + [dir] 25 27 + [)] 28 28 + [)] 29 29 +L216 + [}] 1 1 +L218 + [func] 1 4 + [subvolCreate] 6 17 + [(] 18 18 + [path] 19 22 + [,] 23 23 + [name] 25 28 + [string] 30 35 + [)] 36 36 + [error] 38 42 + [{] 44 44 +L219 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [path] 22 25 + [)] 26 26 +L220 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L221 + [return] 3 8 + [err] 10 12 +L222 + [}] 2 2 +L223 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L225 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_vol_args] 13 39 +L226 + [for] 2 4 + [i] 6 6 + [,] 7 7 + [c] 9 9 + [:=] 11 12 + [range] 14 18 + [\[] 20 20 + [\]] 21 21 + [byte] 22 25 + [(] 26 26 + [name] 27 30 + [)] 31 31 + [{] 33 33 +L227 + [args] 3 6 + [.] 7 7 + [name] 8 11 + [\[] 12 12 + [i] 13 13 + [\]] 14 14 + [=] 16 16 + [C] 18 18 + [.] 19 19 + [char] 20 23 + [(] 24 24 + [c] 25 25 + [)] 26 26 +L228 + [}] 2 2 +L230 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_SUBVOL_CREATE] 63 85 + [,] 86 86 +L231 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L232 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L233 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to create btrfs subvolume:[ 21 58 + [,] 59 59 + [errno] 61 65 + [.] 66 66 + [Error] 67 71 + [(] 72 72 + [)] 73 73 + [)] 74 74 +L234 + [}] 2 2 +L235 + [return] 2 7 + [nil] 9 11 +L236 + [}] 1 1 +L238 + [func] 1 4 + [subvolSnapshot] 6 19 + [(] 20 20 + [src] 21 23 + [,] 24 24 + [dest] 26 29 + [,] 30 30 + [name] 32 35 + [string] 37 42 + [)] 43 43 + [error] 45 49 + [{] 51 51 +L239 + [srcDir] 2 7 + [,] 8 8 + [err] 10 12 + [:=] 14 15 + [openDir] 17 23 + [(] 24 24 + [src] 25 27 + [)] 28 28 +L240 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L241 + [return] 3 8 + [err] 10 12 +L242 + [}] 2 2 +L243 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [srcDir] 17 22 + [)] 23 23 +L245 + [destDir] 2 8 + [,] 9 9 + [err] 11 13 + [:=] 15 16 + [openDir] 18 24 + [(] 25 25 + [dest] 26 29 + [)] 30 30 +L246 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L247 + [return] 3 8 + [err] 10 12 +L248 + [}] 2 2 +L249 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [destDir] 17 23 + [)] 24 24 +L251 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_vol_args_v2] 13 42 +L252 + [args] 2 5 + [.] 6 6 + [fd] 7 8 + [=] 10 10 + [C] 12 12 + [.] 13 13 + [__s64] 14 18 + [(] 19 19 + [getDirFd] 20 27 + [(] 28 28 + [srcDir] 29 34 + [)] 35 35 + [)] 36 36 +L254 + [var] 2 4 + [cs] 6 7 + [=] 9 9 + [C] 11 11 + [.] 12 12 + [CString] 13 19 + [(] 20 20 + [name] 21 24 + [)] 25 25 +L255 + [C] 2 2 + [.] 3 3 + [set_name_btrfs_ioctl_vol_args_v2] 4 35 + [(] 36 36 + [&] 37 37 + [args] 38 41 + [,] 42 42 + [cs] 44 45 + [)] 46 46 +L256 + [C] 2 2 + [.] 3 3 + [free] 4 7 + [(] 8 8 + [unsafe] 9 14 + [.] 15 15 + [Pointer] 16 22 + [(] 23 23 + [cs] 24 25 + [)] 26 26 + [)] 27 27 +L258 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [destDir] 55 61 + [)] 62 62 + [,] 63 63 + [C] 65 65 + [.] 66 66 + [BTRFS_IOC_SNAP_CREATE_V2] 67 90 + [,] 91 91 +L259 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L260 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L261 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to create btrfs snapshot: [ 21 57 + [,] 58 58 + [errno] 60 64 + [.] 65 65 + [Error] 66 70 + [(] 71 71 + [)] 72 72 + [)] 73 73 +L262 + [}] 2 2 +L263 + [return] 2 7 + [nil] 9 11 +L264 + [}] 1 1 +L266 + [func] 1 4 + [isSubvolume] 6 16 + [(] 17 17 + [p] 18 18 + [string] 20 25 + [)] 26 26 + [(] 28 28 + [bool] 29 32 + [,] 33 33 + [error] 35 39 + [)] 40 40 + [{] 42 42 +L267 + [var] 2 4 + [bufStat] 6 12 + [unix] 14 17 + [.] 18 18 + [Stat_t] 19 24 +L268 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [unix] 12 15 + [.] 16 16 + [Lstat] 17 21 + [(] 22 22 + [p] 23 23 + [,] 24 24 + [&] 26 26 + [bufStat] 27 33 + [)] 34 34 + [;] 35 35 + [err] 37 39 + [!=] 41 42 + [nil] 44 46 + [{] 48 48 +L269 + [return] 3 8 + [false] 10 14 + [,] 15 15 + [err] 17 19 +L270 + [}] 2 2 +L273 + [return] 2 7 + [bufStat] 9 15 + [.] 16 16 + [Ino] 17 19 + [==] 21 22 + [C] 24 24 + [.] 25 25 + [BTRFS_FIRST_FREE_OBJECTID] 26 50 + [,] 51 51 + [nil] 53 55 +L274 + [}] 1 1 +L276 + [func] 1 4 + [subvolDelete] 6 17 + [(] 18 18 + [dirpath] 19 25 + [,] 26 26 + [name] 28 31 + [string] 33 38 + [,] 39 39 + [quotaEnabled] 41 52 + [bool] 54 57 + [)] 58 58 + [error] 60 64 + [{] 66 66 +L277 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [dirpath] 22 28 + [)] 29 29 +L278 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L279 + [return] 3 8 + [err] 10 12 +L280 + [}] 2 2 +L281 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L282 + [fullPath] 2 9 + [:=] 11 12 + [path] 14 17 + [.] 18 18 + [Join] 19 22 + [(] 23 23 + [dirpath] 24 30 + [,] 31 31 + [name] 33 36 + [)] 37 37 +L284 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_vol_args] 13 39 +L287 + [walkSubvolumes] 2 15 + [:=] 17 18 + [func] 20 23 + [(] 24 24 + [p] 25 25 + [string] 27 32 + [,] 33 33 + [f] 35 35 + [os] 37 38 + [.] 39 39 + [FileInfo] 40 47 + [,] 48 48 + [err] 50 52 + [error] 54 58 + [)] 59 59 + [error] 61 65 + [{] 67 67 +L288 + [if] 3 4 + [err] 6 8 + [!=] 10 11 + [nil] 13 15 + [{] 17 17 +L289 + [if] 4 5 + [os] 7 8 + [.] 9 9 + [IsNotExist] 10 19 + [(] 20 20 + [err] 21 23 + [)] 24 24 + [&&] 26 27 + [p] 29 29 + [!=] 31 32 + [fullPath] 34 41 + [{] 43 43 +L292 + [return] 5 10 + [nil] 12 14 +L293 + [}] 4 4 +L294 + [return] 4 9 + [fmt] 11 13 + [.] 14 14 + [Errorf] 15 20 + [(] 21 21 + ["error walking subvolumes: %v"] 22 51 + [,] 52 52 + [err] 54 56 + [)] 57 57 +L295 + [}] 3 3 +L298 + [if] 3 4 + [f] 6 6 + [.] 7 7 + [IsDir] 8 12 + [(] 13 13 + [)] 14 14 + [&&] 16 17 + [p] 19 19 + [!=] 21 22 + [fullPath] 24 31 + [{] 33 33 +L299 + [sv] 4 5 + [,] 6 6 + [err] 8 10 + [:=] 12 13 + [isSubvolume] 15 25 + [(] 26 26 + [p] 27 27 + [)] 28 28 +L300 + [if] 4 5 + [err] 7 9 + [!=] 11 12 + [nil] 14 16 + [{] 18 18 +L301 + [return] 5 10 + [fmt] 12 14 + [.] 15 15 + [Errorf] 16 21 + [(] 22 22 + ["Failed to test if %s is a btrfs s[ 23 69 + [,] 70 70 + [p] 72 72 + [,] 73 73 + [err] 75 77 + [)] 78 78 +L302 + [}] 4 4 +L303 + [if] 4 5 + [sv] 7 8 + [{] 10 10 +L304 + [if] 5 6 + [err] 8 10 + [:=] 12 13 + [subvolDelete] 15 26 + [(] 27 27 + [path] 28 31 + [.] 32 32 + [Dir] 33 35 + [(] 36 36 + [p] 37 37 + [)] 38 38 + [,] 39 39 + [f] 41 41 + [.] 42 42 + [Name] 43 46 + [(] 47 47 + [)] 48 48 + [,] 49 49 + [quotaEnabled] 51 62 + [)] 63 63 + [;] 64 64 + [err] 66 68 + [!=] 70 71 + [nil] 73 75 + [{] 77 77 +L305 + [return] 6 11 + [fmt] 13 15 + [.] 16 16 + [Errorf] 17 22 + [(] 23 23 + ["Failed to destroy btrfs child sub[ 24 88 + [,] 89 89 + [p] 91 91 + [,] 92 92 + [dirpath] 94 100 + [,] 101 101 + [err] 103 105 + [)] 106 106 +L306 + [}] 5 5 +L307 + [}] 4 4 +L308 + [}] 3 3 +L309 + [return] 3 8 + [nil] 10 12 +L310 + [}] 2 2 +L311 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [filepath] 12 19 + [.] 20 20 + [Walk] 21 24 + [(] 25 25 + [path] 26 29 + [.] 30 30 + [Join] 31 34 + [(] 35 35 + [dirpath] 36 42 + [,] 43 43 + [name] 45 48 + [)] 49 49 + [,] 50 50 + [walkSubvolumes] 52 65 + [)] 66 66 + [;] 67 67 + [err] 69 71 + [!=] 73 74 + [nil] 76 78 + [{] 80 80 +L312 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Recursively walking subvolumes fo[ 21 70 + [,] 71 71 + [dirpath] 73 79 + [,] 80 80 + [err] 82 84 + [)] 85 85 +L313 + [}] 2 2 +L315 + [if] 2 3 + [quotaEnabled] 5 16 + [{] 18 18 +L316 + [if] 3 4 + [qgroupid] 6 13 + [,] 14 14 + [err] 16 18 + [:=] 20 21 + [subvolLookupQgroup] 23 40 + [(] 41 41 + [fullPath] 42 49 + [)] 50 50 + [;] 51 51 + [err] 53 55 + [==] 57 58 + [nil] 60 62 + [{] 64 64 +L317 + [var] 4 6 + [args] 8 11 + [C] 13 13 + [.] 14 14 + [struct_btrfs_ioctl_qgroup_create_a[ 15 51 +L318 + [args] 4 7 + [.] 8 8 + [qgroupid] 9 16 + [=] 18 18 + [C] 20 20 + [.] 21 21 + [__u64] 22 26 + [(] 27 27 + [qgroupid] 28 35 + [)] 36 36 +L320 + [_] 4 4 + [,] 5 5 + [_] 7 7 + [,] 8 8 + [errno] 10 14 + [:=] 16 17 + [unix] 19 22 + [.] 23 23 + [Syscall] 24 30 + [(] 31 31 + [unix] 32 35 + [.] 36 36 + [SYS_IOCTL] 37 45 + [,] 46 46 + [getDirFd] 48 55 + [(] 56 56 + [dir] 57 59 + [)] 60 60 + [,] 61 61 + [C] 63 63 + [.] 64 64 + [BTRFS_IOC_QGROUP_CREATE] 65 87 + [,] 88 88 +L321 + [uintptr] 5 11 + [(] 12 12 + [unsafe] 13 18 + [.] 19 19 + [Pointer] 20 26 + [(] 27 27 + [&] 28 28 + [args] 29 32 + [)] 33 33 + [)] 34 34 + [)] 35 35 +L322 + [if] 4 5 + [errno] 7 11 + [!=] 13 14 + [0] 16 16 + [{] 18 18 +L323 + [logrus] 5 10 + [.] 11 11 + [WithField] 12 20 + [(] 21 21 + ["storage-driver"] 22 37 + [,] 38 38 + ["btrfs"] 40 46 + [)] 47 47 + [.] 48 48 + [Errorf] 49 54 + [(] 55 55 + ["Failed to delete btrfs qgroup %v [ 56 100 + [,] 101 101 + [qgroupid] 103 110 + [,] 111 111 + [fullPath] 113 120 + [,] 121 121 + [errno] 123 127 + [.] 128 128 + [Error] 129 133 + [(] 134 134 + [)] 135 135 + [)] 136 136 +L324 + [}] 4 4 +L325 + [}] 3 3 + [else] 5 8 + [{] 10 10 +L326 + [logrus] 4 9 + [.] 10 10 + [WithField] 11 19 + [(] 20 20 + ["storage-driver"] 21 36 + [,] 37 37 + ["btrfs"] 39 45 + [)] 46 46 + [.] 47 47 + [Errorf] 48 53 + [(] 54 54 + ["Failed to lookup btrfs qgroup for[ 55 96 + [,] 97 97 + [fullPath] 99 106 + [,] 107 107 + [err] 109 111 + [.] 112 112 + [Error] 113 117 + [(] 118 118 + [)] 119 119 + [)] 120 120 +L327 + [}] 3 3 +L328 + [}] 2 2 +L332 + [for] 2 4 + [i] 6 6 + [,] 7 7 + [c] 9 9 + [:=] 11 12 + [range] 14 18 + [\[] 20 20 + [\]] 21 21 + [byte] 22 25 + [(] 26 26 + [name] 27 30 + [)] 31 31 + [{] 33 33 +L333 + [args] 3 6 + [.] 7 7 + [name] 8 11 + [\[] 12 12 + [i] 13 13 + [\]] 14 14 + [=] 16 16 + [C] 18 18 + [.] 19 19 + [char] 20 23 + [(] 24 24 + [c] 25 25 + [)] 26 26 +L334 + [}] 2 2 +L335 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_SNAP_DESTROY] 63 84 + [,] 85 85 +L336 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L337 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L338 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to destroy btrfs snapshot [ 21 68 + [,] 69 69 + [dirpath] 71 77 + [,] 78 78 + [name] 80 83 + [,] 84 84 + [errno] 86 90 + [.] 91 91 + [Error] 92 96 + [(] 97 97 + [)] 98 98 + [)] 99 99 +L339 + [}] 2 2 +L340 + [return] 2 7 + [nil] 9 11 +L341 + [}] 1 1 +L343 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [updateQuotaStatus] 18 34 + [(] 35 35 + [)] 36 36 + [{] 38 38 +L344 + [d] 2 2 + [.] 3 3 + [once] 4 7 + [.] 8 8 + [Do] 9 10 + [(] 11 11 + [func] 12 15 + [(] 16 16 + [)] 17 17 + [{] 19 19 +L345 + [if] 3 4 + [!] 6 6 + [d] 7 7 + [.] 8 8 + [quotaEnabled] 9 20 + [{] 22 22 +L347 + [if] 4 5 + [err] 7 9 + [:=] 11 12 + [subvolQgroupStatus] 14 31 + [(] 32 32 + [d] 33 33 + [.] 34 34 + [home] 35 38 + [)] 39 39 + [;] 40 40 + [err] 42 44 + [!=] 46 47 + [nil] 49 51 + [{] 53 53 +L349 + [return] 5 10 +L350 + [}] 4 4 +L351 + [d] 4 4 + [.] 5 5 + [quotaEnabled] 6 17 + [=] 19 19 + [true] 21 24 +L352 + [}] 3 3 +L353 + [}] 2 2 + [)] 3 3 +L354 + [}] 1 1 +L356 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [subvolEnableQuota] 18 34 + [(] 35 35 + [)] 36 36 + [error] 38 42 + [{] 44 44 +L357 + [d] 2 2 + [.] 3 3 + [updateQuotaStatus] 4 20 + [(] 21 21 + [)] 22 22 +L359 + [if] 2 3 + [d] 5 5 + [.] 6 6 + [quotaEnabled] 7 18 + [{] 20 20 +L360 + [return] 3 8 + [nil] 10 12 +L361 + [}] 2 2 +L363 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [d] 22 22 + [.] 23 23 + [home] 24 27 + [)] 28 28 +L364 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L365 + [return] 3 8 + [err] 10 12 +L366 + [}] 2 2 +L367 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L369 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_quota_ctl_args] 13 45 +L370 + [args] 2 5 + [.] 6 6 + [cmd] 7 9 + [=] 11 11 + [C] 13 13 + [.] 14 14 + [BTRFS_QUOTA_CTL_ENABLE] 15 36 +L371 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_QUOTA_CTL] 63 81 + [,] 82 82 +L372 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L373 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L374 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to enable btrfs quota for [ 21 61 + [,] 62 62 + [dir] 64 66 + [,] 67 67 + [errno] 69 73 + [.] 74 74 + [Error] 75 79 + [(] 80 80 + [)] 81 81 + [)] 82 82 +L375 + [}] 2 2 +L377 + [d] 2 2 + [.] 3 3 + [quotaEnabled] 4 15 + [=] 17 17 + [true] 19 22 +L379 + [return] 2 7 + [nil] 9 11 +L380 + [}] 1 1 +L382 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [subvolDisableQuota] 18 35 + [(] 36 36 + [)] 37 37 + [error] 39 43 + [{] 45 45 +L383 + [d] 2 2 + [.] 3 3 + [updateQuotaStatus] 4 20 + [(] 21 21 + [)] 22 22 +L385 + [if] 2 3 + [!] 5 5 + [d] 6 6 + [.] 7 7 + [quotaEnabled] 8 19 + [{] 21 21 +L386 + [return] 3 8 + [nil] 10 12 +L387 + [}] 2 2 +L389 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [d] 22 22 + [.] 23 23 + [home] 24 27 + [)] 28 28 +L390 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L391 + [return] 3 8 + [err] 10 12 +L392 + [}] 2 2 +L393 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L395 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_quota_ctl_args] 13 45 +L396 + [args] 2 5 + [.] 6 6 + [cmd] 7 9 + [=] 11 11 + [C] 13 13 + [.] 14 14 + [BTRFS_QUOTA_CTL_DISABLE] 15 37 +L397 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_QUOTA_CTL] 63 81 + [,] 82 82 +L398 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L399 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L400 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to disable btrfs quota for[ 21 62 + [,] 63 63 + [dir] 65 67 + [,] 68 68 + [errno] 70 74 + [.] 75 75 + [Error] 76 80 + [(] 81 81 + [)] 82 82 + [)] 83 83 +L401 + [}] 2 2 +L403 + [d] 2 2 + [.] 3 3 + [quotaEnabled] 4 15 + [=] 17 17 + [false] 19 23 +L405 + [return] 2 7 + [nil] 9 11 +L406 + [}] 1 1 +L408 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [subvolRescanQuota] 18 34 + [(] 35 35 + [)] 36 36 + [error] 38 42 + [{] 44 44 +L409 + [d] 2 2 + [.] 3 3 + [updateQuotaStatus] 4 20 + [(] 21 21 + [)] 22 22 +L411 + [if] 2 3 + [!] 5 5 + [d] 6 6 + [.] 7 7 + [quotaEnabled] 8 19 + [{] 21 21 +L412 + [return] 3 8 + [nil] 10 12 +L413 + [}] 2 2 +L415 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [d] 22 22 + [.] 23 23 + [home] 24 27 + [)] 28 28 +L416 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L417 + [return] 3 8 + [err] 10 12 +L418 + [}] 2 2 +L419 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L421 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_quota_rescan_ar[ 13 48 +L422 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_QUOTA_RESCAN_WAIT] 63 89 + [,] 90 90 +L423 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L424 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L425 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to rescan btrfs quota for [ 21 61 + [,] 62 62 + [dir] 64 66 + [,] 67 67 + [errno] 69 73 + [.] 74 74 + [Error] 75 79 + [(] 80 80 + [)] 81 81 + [)] 82 82 +L426 + [}] 2 2 +L428 + [return] 2 7 + [nil] 9 11 +L429 + [}] 1 1 +L431 + [func] 1 4 + [subvolLimitQgroup] 6 22 + [(] 23 23 + [path] 24 27 + [string] 29 34 + [,] 35 35 + [size] 37 40 + [uint64] 42 47 + [)] 48 48 + [error] 50 54 + [{] 56 56 +L432 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [path] 22 25 + [)] 26 26 +L433 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L434 + [return] 3 8 + [err] 10 12 +L435 + [}] 2 2 +L436 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L438 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_qgroup_limit_ar[ 13 48 +L439 + [args] 2 5 + [.] 6 6 + [lim] 7 9 + [.] 10 10 + [max_referenced] 11 24 + [=] 26 26 + [C] 28 28 + [.] 29 29 + [__u64] 30 34 + [(] 35 35 + [size] 36 39 + [)] 40 40 +L440 + [args] 2 5 + [.] 6 6 + [lim] 7 9 + [.] 10 10 + [flags] 11 15 + [=] 17 17 + [C] 19 19 + [.] 20 20 + [BTRFS_QGROUP_LIMIT_MAX_RFER] 21 47 +L441 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_QGROUP_LIMIT] 63 84 + [,] 85 85 +L442 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L443 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L444 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to limit qgroup for %s: %v[ 21 55 + [,] 56 56 + [dir] 58 60 + [,] 61 61 + [errno] 63 67 + [.] 68 68 + [Error] 69 73 + [(] 74 74 + [)] 75 75 + [)] 76 76 +L445 + [}] 2 2 +L447 + [return] 2 7 + [nil] 9 11 +L448 + [}] 1 1 +L454 + [func] 1 4 + [subvolQgroupStatus] 6 23 + [(] 24 24 + [path] 25 28 + [string] 30 35 + [)] 36 36 + [error] 38 42 + [{] 44 44 +L455 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [path] 22 25 + [)] 26 26 +L456 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L457 + [return] 3 8 + [err] 10 12 +L458 + [}] 2 2 +L459 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L461 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_search_args] 13 42 +L462 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [tree_id] 11 17 + [=] 19 19 + [C] 21 21 + [.] 22 22 + [BTRFS_QUOTA_TREE_OBJECTID] 23 47 +L463 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [min_type] 11 18 + [=] 20 20 + [C] 22 22 + [.] 23 23 + [BTRFS_QGROUP_STATUS_KEY] 24 46 +L464 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [max_type] 11 18 + [=] 20 20 + [C] 22 22 + [.] 23 23 + [BTRFS_QGROUP_STATUS_KEY] 24 46 +L465 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [max_objectid] 11 22 + [=] 24 24 + [C] 26 26 + [.] 27 27 + [__u64] 28 32 + [(] 33 33 + [math] 34 37 + [.] 38 38 + [MaxUint64] 39 47 + [)] 48 48 +L466 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [max_offset] 11 20 + [=] 22 22 + [C] 24 24 + [.] 25 25 + [__u64] 26 30 + [(] 31 31 + [math] 32 35 + [.] 36 36 + [MaxUint64] 37 45 + [)] 46 46 +L467 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [max_transid] 11 21 + [=] 23 23 + [C] 25 25 + [.] 26 26 + [__u64] 27 31 + [(] 32 32 + [math] 33 36 + [.] 37 37 + [MaxUint64] 38 46 + [)] 47 47 +L468 + [args] 2 5 + [.] 6 6 + [key] 7 9 + [.] 10 10 + [nr_items] 11 18 + [=] 20 20 + [4096] 22 25 +L470 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_TREE_SEARCH] 63 83 + [,] 84 84 +L471 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L472 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L473 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Failed to search qgroup for %s: %[ 21 56 + [,] 57 57 + [path] 59 62 + [,] 63 63 + [errno] 65 69 + [.] 70 70 + [Error] 71 75 + [(] 76 76 + [)] 77 77 + [)] 78 78 +L474 + [}] 2 2 +L475 + [sh] 2 3 + [:=] 5 6 + [(] 8 8 + [*] 9 9 + [C] 10 10 + [.] 11 11 + [struct_btrfs_ioctl_search_header] 12 43 + [)] 44 44 + [(] 45 45 + [unsafe] 46 51 + [.] 52 52 + [Pointer] 53 59 + [(] 60 60 + [&] 61 61 + [args] 62 65 + [.] 66 66 + [buf] 67 69 + [)] 70 70 + [)] 71 71 +L476 + [if] 2 3 + [sh] 5 6 + [.] 7 7 + [_type] 8 12 + [!=] 14 15 + [C] 17 17 + [.] 18 18 + [BTRFS_QGROUP_STATUS_KEY] 19 41 + [{] 43 43 +L477 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["Invalid qgroup search header type[ 21 66 + [,] 67 67 + [path] 69 72 + [,] 73 73 + [sh] 75 76 + [.] 77 77 + [_type] 78 82 + [)] 83 83 +L478 + [}] 2 2 +L479 + [return] 2 7 + [nil] 9 11 +L480 + [}] 1 1 +L482 + [func] 1 4 + [subvolLookupQgroup] 6 23 + [(] 24 24 + [path] 25 28 + [string] 30 35 + [)] 36 36 + [(] 38 38 + [uint64] 39 44 + [,] 45 45 + [error] 47 51 + [)] 52 52 + [{] 54 54 +L483 + [dir] 2 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [openDir] 14 20 + [(] 21 21 + [path] 22 25 + [)] 26 26 +L484 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L485 + [return] 3 8 + [0] 10 10 + [,] 11 11 + [err] 13 15 +L486 + [}] 2 2 +L487 + [defer] 2 6 + [closeDir] 8 15 + [(] 16 16 + [dir] 17 19 + [)] 20 20 +L489 + [var] 2 4 + [args] 6 9 + [C] 11 11 + [.] 12 12 + [struct_btrfs_ioctl_ino_lookup_args] 13 46 +L490 + [args] 2 5 + [.] 6 6 + [objectid] 7 14 + [=] 16 16 + [C] 18 18 + [.] 19 19 + [BTRFS_FIRST_FREE_OBJECTID] 20 44 +L492 + [_] 2 2 + [,] 3 3 + [_] 5 5 + [,] 6 6 + [errno] 8 12 + [:=] 14 15 + [unix] 17 20 + [.] 21 21 + [Syscall] 22 28 + [(] 29 29 + [unix] 30 33 + [.] 34 34 + [SYS_IOCTL] 35 43 + [,] 44 44 + [getDirFd] 46 53 + [(] 54 54 + [dir] 55 57 + [)] 58 58 + [,] 59 59 + [C] 61 61 + [.] 62 62 + [BTRFS_IOC_INO_LOOKUP] 63 82 + [,] 83 83 +L493 + [uintptr] 3 9 + [(] 10 10 + [unsafe] 11 16 + [.] 17 17 + [Pointer] 18 24 + [(] 25 25 + [&] 26 26 + [args] 27 30 + [)] 31 31 + [)] 32 32 + [)] 33 33 +L494 + [if] 2 3 + [errno] 5 9 + [!=] 11 12 + [0] 14 14 + [{] 16 16 +L495 + [return] 3 8 + [0] 10 10 + [,] 11 11 + [fmt] 13 15 + [.] 16 16 + [Errorf] 17 22 + [(] 23 23 + ["Failed to lookup qgroup for %s: %[ 24 59 + [,] 60 60 + [dir] 62 64 + [,] 65 65 + [errno] 67 71 + [.] 72 72 + [Error] 73 77 + [(] 78 78 + [)] 79 79 + [)] 80 80 +L496 + [}] 2 2 +L497 + [if] 2 3 + [args] 5 8 + [.] 9 9 + [treeid] 10 15 + [==] 17 18 + [0] 20 20 + [{] 22 22 +L498 + [return] 3 8 + [0] 10 10 + [,] 11 11 + [fmt] 13 15 + [.] 16 16 + [Errorf] 17 22 + [(] 23 23 + ["Invalid qgroup id for %s: 0"] 24 52 + [,] 53 53 + [dir] 55 57 + [)] 58 58 +L499 + [}] 2 2 +L501 + [return] 2 7 + [uint64] 9 14 + [(] 15 15 + [args] 16 19 + [.] 20 20 + [treeid] 21 26 + [)] 27 27 + [,] 28 28 + [nil] 30 32 +L502 + [}] 1 1 +L504 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [subvolumesDir] 18 30 + [(] 31 31 + [)] 32 32 + [string] 34 39 + [{] 41 41 +L505 + [return] 2 7 + [path] 9 12 + [.] 13 13 + [Join] 14 17 + [(] 18 18 + [d] 19 19 + [.] 20 20 + [home] 21 24 + [,] 25 25 + ["subvolumes"] 27 38 + [)] 39 39 +L506 + [}] 1 1 +L508 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [subvolumesDirID] 18 32 + [(] 33 33 + [id] 34 35 + [string] 37 42 + [)] 43 43 + [string] 45 50 + [{] 52 52 +L509 + [return] 2 7 + [path] 9 12 + [.] 13 13 + [Join] 14 17 + [(] 18 18 + [d] 19 19 + [.] 20 20 + [subvolumesDir] 21 33 + [(] 34 34 + [)] 35 35 + [,] 36 36 + [id] 38 39 + [)] 40 40 +L510 + [}] 1 1 +L512 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [quotasDir] 18 26 + [(] 27 27 + [)] 28 28 + [string] 30 35 + [{] 37 37 +L513 + [return] 2 7 + [path] 9 12 + [.] 13 13 + [Join] 14 17 + [(] 18 18 + [d] 19 19 + [.] 20 20 + [home] 21 24 + [,] 25 25 + ["quotas"] 27 34 + [)] 35 35 +L514 + [}] 1 1 +L516 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [quotasDirID] 18 28 + [(] 29 29 + [id] 30 31 + [string] 33 38 + [)] 39 39 + [string] 41 46 + [{] 48 48 +L517 + [return] 2 7 + [path] 9 12 + [.] 13 13 + [Join] 14 17 + [(] 18 18 + [d] 19 19 + [.] 20 20 + [quotasDir] 21 29 + [(] 30 30 + [)] 31 31 + [,] 32 32 + [id] 34 35 + [)] 36 36 +L518 + [}] 1 1 +L522 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [CreateReadWrite] 18 32 + [(] 33 33 + [id] 34 35 + [,] 36 36 + [parent] 38 43 + [string] 45 50 + [,] 51 51 + [opts] 53 56 + [*] 58 58 + [graphdriver] 59 69 + [.] 70 70 + [CreateOpts] 71 80 + [)] 81 81 + [error] 83 87 + [{] 89 89 +L523 + [return] 2 7 + [d] 9 9 + [.] 10 10 + [Create] 11 16 + [(] 17 17 + [id] 18 19 + [,] 20 20 + [parent] 22 27 + [,] 28 28 + [opts] 30 33 + [)] 34 34 +L524 + [}] 1 1 +L527 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Create] 18 23 + [(] 24 24 + [id] 25 26 + [,] 27 27 + [parent] 29 34 + [string] 36 41 + [,] 42 42 + [opts] 44 47 + [*] 49 49 + [graphdriver] 50 60 + [.] 61 61 + [CreateOpts] 62 71 + [)] 72 72 + [error] 74 78 + [{] 80 80 +L528 + [quotas] 2 7 + [:=] 9 10 + [path] 12 15 + [.] 16 16 + [Join] 17 20 + [(] 21 21 + [d] 22 22 + [.] 23 23 + [home] 24 27 + [,] 28 28 + ["quotas"] 30 37 + [)] 38 38 +L529 + [subvolumes] 2 11 + [:=] 13 14 + [path] 16 19 + [.] 20 20 + [Join] 21 24 + [(] 25 25 + [d] 26 26 + [.] 27 27 + [home] 28 31 + [,] 32 32 + ["subvolumes"] 34 45 + [)] 46 46 +L530 + [rootUID] 2 8 + [,] 9 9 + [rootGID] 11 17 + [,] 18 18 + [err] 20 22 + [:=] 24 25 + [idtools] 27 33 + [.] 34 34 + [GetRootUIDGID] 35 47 + [(] 48 48 + [d] 49 49 + [.] 50 50 + [uidMaps] 51 57 + [,] 58 58 + [d] 60 60 + [.] 61 61 + [gidMaps] 62 68 + [)] 69 69 +L531 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L532 + [return] 3 8 + [err] 10 12 +L533 + [}] 2 2 +L534 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [idtools] 12 18 + [.] 19 19 + [MkdirAllAndChown] 20 35 + [(] 36 36 + [subvolumes] 37 46 + [,] 47 47 + [0700] 49 52 + [,] 53 53 + [idtools] 55 61 + [.] 62 62 + [Identity] 63 70 + [{] 71 71 + [UID] 72 74 + [:] 75 75 + [rootUID] 77 83 + [,] 84 84 + [GID] 86 88 + [:] 89 89 + [rootGID] 91 97 + [}] 98 98 + [)] 99 99 + [;] 100 100 + [err] 102 104 + [!=] 106 107 + [nil] 109 111 + [{] 113 113 +L535 + [return] 3 8 + [err] 10 12 +L536 + [}] 2 2 +L537 + [if] 2 3 + [parent] 5 10 + [==] 12 13 + [""] 15 16 + [{] 18 18 +L538 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [subvolCreate] 13 24 + [(] 25 25 + [subvolumes] 26 35 + [,] 36 36 + [id] 38 39 + [)] 40 40 + [;] 41 41 + [err] 43 45 + [!=] 47 48 + [nil] 50 52 + [{] 54 54 +L539 + [return] 4 9 + [err] 11 13 +L540 + [}] 3 3 +L541 + [}] 2 2 + [else] 4 7 + [{] 9 9 +L542 + [parentDir] 3 11 + [:=] 13 14 + [d] 16 16 + [.] 17 17 + [subvolumesDirID] 18 32 + [(] 33 33 + [parent] 34 39 + [)] 40 40 +L543 + [st] 3 4 + [,] 5 5 + [err] 7 9 + [:=] 11 12 + [os] 14 15 + [.] 16 16 + [Stat] 17 20 + [(] 21 21 + [parentDir] 22 30 + [)] 31 31 +L544 + [if] 3 4 + [err] 6 8 + [!=] 10 11 + [nil] 13 15 + [{] 17 17 +L545 + [return] 4 9 + [err] 11 13 +L546 + [}] 3 3 +L547 + [if] 3 4 + [!] 6 6 + [st] 7 8 + [.] 9 9 + [IsDir] 10 14 + [(] 15 15 + [)] 16 16 + [{] 18 18 +L548 + [return] 4 9 + [fmt] 11 13 + [.] 14 14 + [Errorf] 15 20 + [(] 21 21 + ["%s: not a directory"] 22 42 + [,] 43 43 + [parentDir] 45 53 + [)] 54 54 +L549 + [}] 3 3 +L550 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [subvolSnapshot] 13 26 + [(] 27 27 + [parentDir] 28 36 + [,] 37 37 + [subvolumes] 39 48 + [,] 49 49 + [id] 51 52 + [)] 53 53 + [;] 54 54 + [err] 56 58 + [!=] 60 61 + [nil] 63 65 + [{] 67 67 +L551 + [return] 4 9 + [err] 11 13 +L552 + [}] 3 3 +L553 + [}] 2 2 +L555 + [var] 2 4 + [storageOpt] 6 15 + [map] 17 19 + [\[] 20 20 + [string] 21 26 + [\]] 27 27 + [string] 28 33 +L556 + [if] 2 3 + [opts] 5 8 + [!=] 10 11 + [nil] 13 15 + [{] 17 17 +L557 + [storageOpt] 3 12 + [=] 14 14 + [opts] 16 19 + [.] 20 20 + [StorageOpt] 21 30 +L558 + [}] 2 2 +L560 + [if] 2 3 + [_] 5 5 + [,] 6 6 + [ok] 8 9 + [:=] 11 12 + [storageOpt] 14 23 + [\[] 24 24 + ["size"] 25 30 + [\]] 31 31 + [;] 32 32 + [ok] 34 35 + [{] 37 37 +L561 + [driver] 3 8 + [:=] 10 11 + [&] 13 13 + [Driver] 14 19 + [{] 20 20 + [}] 21 21 +L562 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [d] 13 13 + [.] 14 14 + [parseStorageOpt] 15 29 + [(] 30 30 + [storageOpt] 31 40 + [,] 41 41 + [driver] 43 48 + [)] 49 49 + [;] 50 50 + [err] 52 54 + [!=] 56 57 + [nil] 59 61 + [{] 63 63 +L563 + [return] 4 9 + [err] 11 13 +L564 + [}] 3 3 +L566 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [d] 13 13 + [.] 14 14 + [setStorageSize] 15 28 + [(] 29 29 + [path] 30 33 + [.] 34 34 + [Join] 35 38 + [(] 39 39 + [subvolumes] 40 49 + [,] 50 50 + [id] 52 53 + [)] 54 54 + [,] 55 55 + [driver] 57 62 + [)] 63 63 + [;] 64 64 + [err] 66 68 + [!=] 70 71 + [nil] 73 75 + [{] 77 77 +L567 + [return] 4 9 + [err] 11 13 +L568 + [}] 3 3 +L569 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [idtools] 13 19 + [.] 20 20 + [MkdirAllAndChown] 21 36 + [(] 37 37 + [quotas] 38 43 + [,] 44 44 + [0700] 46 49 + [,] 50 50 + [idtools] 52 58 + [.] 59 59 + [Identity] 60 67 + [{] 68 68 + [UID] 69 71 + [:] 72 72 + [rootUID] 74 80 + [,] 81 81 + [GID] 83 85 + [:] 86 86 + [rootGID] 88 94 + [}] 95 95 + [)] 96 96 + [;] 97 97 + [err] 99 101 + [!=] 103 104 + [nil] 106 108 + [{] 110 110 +L570 + [return] 4 9 + [err] 11 13 +L571 + [}] 3 3 +L572 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [ioutil] 13 18 + [.] 19 19 + [WriteFile] 20 28 + [(] 29 29 + [path] 30 33 + [.] 34 34 + [Join] 35 38 + [(] 39 39 + [quotas] 40 45 + [,] 46 46 + [id] 48 49 + [)] 50 50 + [,] 51 51 + [\[] 53 53 + [\]] 54 54 + [byte] 55 58 + [(] 59 59 + [fmt] 60 62 + [.] 63 63 + [Sprint] 64 69 + [(] 70 70 + [driver] 71 76 + [.] 77 77 + [options] 78 84 + [.] 85 85 + [size] 86 89 + [)] 90 90 + [)] 91 91 + [,] 92 92 + [0644] 94 97 + [)] 98 98 + [;] 99 99 + [err] 101 103 + [!=] 105 106 + [nil] 108 110 + [{] 112 112 +L573 + [return] 4 9 + [err] 11 13 +L574 + [}] 3 3 +L575 + [}] 2 2 +L579 + [if] 2 3 + [rootUID] 5 11 + [!=] 13 14 + [0] 16 16 + [||] 18 19 + [rootGID] 21 27 + [!=] 29 30 + [0] 32 32 + [{] 34 34 +L580 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [os] 13 14 + [.] 15 15 + [Chown] 16 20 + [(] 21 21 + [path] 22 25 + [.] 26 26 + [Join] 27 30 + [(] 31 31 + [subvolumes] 32 41 + [,] 42 42 + [id] 44 45 + [)] 46 46 + [,] 47 47 + [rootUID] 49 55 + [,] 56 56 + [rootGID] 58 64 + [)] 65 65 + [;] 66 66 + [err] 68 70 + [!=] 72 73 + [nil] 75 77 + [{] 79 79 +L581 + [return] 4 9 + [err] 11 13 +L582 + [}] 3 3 +L583 + [}] 2 2 +L585 + [mountLabel] 2 11 + [:=] 13 14 + [""] 16 17 +L586 + [if] 2 3 + [opts] 5 8 + [!=] 10 11 + [nil] 13 15 + [{] 17 17 +L587 + [mountLabel] 3 12 + [=] 14 14 + [opts] 16 19 + [.] 20 20 + [MountLabel] 21 30 +L588 + [}] 2 2 +L590 + [return] 2 7 + [label] 9 13 + [.] 14 14 + [Relabel] 15 21 + [(] 22 22 + [path] 23 26 + [.] 27 27 + [Join] 28 31 + [(] 32 32 + [subvolumes] 33 42 + [,] 43 43 + [id] 45 46 + [)] 47 47 + [,] 48 48 + [mountLabel] 50 59 + [,] 60 60 + [false] 62 66 + [)] 67 67 +L591 + [}] 1 1 +L594 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [parseStorageOpt] 18 32 + [(] 33 33 + [storageOpt] 34 43 + [map] 45 47 + [\[] 48 48 + [string] 49 54 + [\]] 55 55 + [string] 56 61 + [,] 62 62 + [driver] 64 69 + [*] 71 71 + [Driver] 72 77 + [)] 78 78 + [error] 80 84 + [{] 86 86 +L596 + [for] 2 4 + [key] 6 8 + [,] 9 9 + [val] 11 13 + [:=] 15 16 + [range] 18 22 + [storageOpt] 24 33 + [{] 35 35 +L597 + [key] 3 5 + [:=] 7 8 + [strings] 10 16 + [.] 17 17 + [ToLower] 18 24 + [(] 25 25 + [key] 26 28 + [)] 29 29 +L598 + [switch] 3 8 + [key] 10 12 + [{] 14 14 +L599 + [case] 3 6 + ["size"] 8 13 + [:] 14 14 +L600 + [size] 4 7 + [,] 8 8 + [err] 10 12 + [:=] 14 15 + [units] 17 21 + [.] 22 22 + [RAMInBytes] 23 32 + [(] 33 33 + [val] 34 36 + [)] 37 37 +L601 + [if] 4 5 + [err] 7 9 + [!=] 11 12 + [nil] 14 16 + [{] 18 18 +L602 + [return] 5 10 + [err] 12 14 +L603 + [}] 4 4 +L604 + [driver] 4 9 + [.] 10 10 + [options] 11 17 + [.] 18 18 + [size] 19 22 + [=] 24 24 + [uint64] 26 31 + [(] 32 32 + [size] 33 36 + [)] 37 37 +L605 + [default] 3 9 + [:] 10 10 +L606 + [return] 4 9 + [fmt] 11 13 + [.] 14 14 + [Errorf] 15 20 + [(] 21 21 + ["Unknown option %s"] 22 40 + [,] 41 41 + [key] 43 45 + [)] 46 46 +L607 + [}] 3 3 +L608 + [}] 2 2 +L610 + [return] 2 7 + [nil] 9 11 +L611 + [}] 1 1 +L614 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [setStorageSize] 18 31 + [(] 32 32 + [dir] 33 35 + [string] 37 42 + [,] 43 43 + [driver] 45 50 + [*] 52 52 + [Driver] 53 58 + [)] 59 59 + [error] 61 65 + [{] 67 67 +L615 + [if] 2 3 + [driver] 5 10 + [.] 11 11 + [options] 12 18 + [.] 19 19 + [size] 20 23 + [<=] 25 26 + [0] 28 28 + [{] 30 30 +L616 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["btrfs: invalid storage size: %s"] 21 53 + [,] 54 54 + [units] 56 60 + [.] 61 61 + [HumanSize] 62 70 + [(] 71 71 + [float64] 72 78 + [(] 79 79 + [driver] 80 85 + [.] 86 86 + [options] 87 93 + [.] 94 94 + [size] 95 98 + [)] 99 99 + [)] 100 100 + [)] 101 101 +L617 + [}] 2 2 +L618 + [if] 2 3 + [d] 5 5 + [.] 6 6 + [options] 7 13 + [.] 14 14 + [minSpace] 15 22 + [>] 24 24 + [0] 26 26 + [&&] 28 29 + [driver] 31 36 + [.] 37 37 + [options] 38 44 + [.] 45 45 + [size] 46 49 + [<] 51 51 + [d] 53 53 + [.] 54 54 + [options] 55 61 + [.] 62 62 + [minSpace] 63 70 + [{] 72 72 +L619 + [return] 3 8 + [fmt] 10 12 + [.] 13 13 + [Errorf] 14 19 + [(] 20 20 + ["btrfs: storage size cannot be les[ 21 64 + [,] 65 65 + [units] 67 71 + [.] 72 72 + [HumanSize] 73 81 + [(] 82 82 + [float64] 83 89 + [(] 90 90 + [d] 91 91 + [.] 92 92 + [options] 93 99 + [.] 100 100 + [minSpace] 101 108 + [)] 109 109 + [)] 110 110 + [)] 111 111 +L620 + [}] 2 2 +L621 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [d] 12 12 + [.] 13 13 + [subvolEnableQuota] 14 30 + [(] 31 31 + [)] 32 32 + [;] 33 33 + [err] 35 37 + [!=] 39 40 + [nil] 42 44 + [{] 46 46 +L622 + [return] 3 8 + [err] 10 12 +L623 + [}] 2 2 +L624 + [return] 2 7 + [subvolLimitQgroup] 9 25 + [(] 26 26 + [dir] 27 29 + [,] 30 30 + [driver] 32 37 + [.] 38 38 + [options] 39 45 + [.] 46 46 + [size] 47 50 + [)] 51 51 +L625 + [}] 1 1 +L628 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Remove] 18 23 + [(] 24 24 + [id] 25 26 + [string] 28 33 + [)] 34 34 + [error] 36 40 + [{] 42 42 +L629 + [dir] 2 4 + [:=] 6 7 + [d] 9 9 + [.] 10 10 + [subvolumesDirID] 11 25 + [(] 26 26 + [id] 27 28 + [)] 29 29 +L630 + [if] 2 3 + [_] 5 5 + [,] 6 6 + [err] 8 10 + [:=] 12 13 + [os] 15 16 + [.] 17 17 + [Stat] 18 21 + [(] 22 22 + [dir] 23 25 + [)] 26 26 + [;] 27 27 + [err] 29 31 + [!=] 33 34 + [nil] 36 38 + [{] 40 40 +L631 + [return] 3 8 + [err] 10 12 +L632 + [}] 2 2 +L633 + [quotasDir] 2 10 + [:=] 12 13 + [d] 15 15 + [.] 16 16 + [quotasDirID] 17 27 + [(] 28 28 + [id] 29 30 + [)] 31 31 +L634 + [if] 2 3 + [_] 5 5 + [,] 6 6 + [err] 8 10 + [:=] 12 13 + [os] 15 16 + [.] 17 17 + [Stat] 18 21 + [(] 22 22 + [quotasDir] 23 31 + [)] 32 32 + [;] 33 33 + [err] 35 37 + [==] 39 40 + [nil] 42 44 + [{] 46 46 +L635 + [if] 3 4 + [err] 6 8 + [:=] 10 11 + [os] 13 14 + [.] 15 15 + [Remove] 16 21 + [(] 22 22 + [quotasDir] 23 31 + [)] 32 32 + [;] 33 33 + [err] 35 37 + [!=] 39 40 + [nil] 42 44 + [{] 46 46 +L636 + [return] 4 9 + [err] 11 13 +L637 + [}] 3 3 +L638 + [}] 2 2 + [else] 4 7 + [if] 9 10 + [!] 12 12 + [os] 13 14 + [.] 15 15 + [IsNotExist] 16 25 + [(] 26 26 + [err] 27 29 + [)] 30 30 + [{] 32 32 +L639 + [return] 3 8 + [err] 10 12 +L640 + [}] 2 2 +L643 + [d] 2 2 + [.] 3 3 + [updateQuotaStatus] 4 20 + [(] 21 21 + [)] 22 22 +L645 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [subvolDelete] 12 23 + [(] 24 24 + [d] 25 25 + [.] 26 26 + [subvolumesDir] 27 39 + [(] 40 40 + [)] 41 41 + [,] 42 42 + [id] 44 45 + [,] 46 46 + [d] 48 48 + [.] 49 49 + [quotaEnabled] 50 61 + [)] 62 62 + [;] 63 63 + [err] 65 67 + [!=] 69 70 + [nil] 72 74 + [{] 76 76 +L646 + [return] 3 8 + [err] 10 12 +L647 + [}] 2 2 +L648 + [if] 2 3 + [err] 5 7 + [:=] 9 10 + [system] 12 17 + [.] 18 18 + [EnsureRemoveAll] 19 33 + [(] 34 34 + [dir] 35 37 + [)] 38 38 + [;] 39 39 + [err] 41 43 + [!=] 45 46 + [nil] 48 50 + [{] 52 52 +L649 + [return] 3 8 + [err] 10 12 +L650 + [}] 2 2 +L651 + [return] 2 7 + [d] 9 9 + [.] 10 10 + [subvolRescanQuota] 11 27 + [(] 28 28 + [)] 29 29 +L652 + [}] 1 1 +L655 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Get] 18 20 + [(] 21 21 + [id] 22 23 + [,] 24 24 + [mountLabel] 26 35 + [string] 37 42 + [)] 43 43 + [(] 45 45 + [containerfs] 46 56 + [.] 57 57 + [ContainerFS] 58 68 + [,] 69 69 + [error] 71 75 + [)] 76 76 + [{] 78 78 +L656 + [dir] 2 4 + [:=] 6 7 + [d] 9 9 + [.] 10 10 + [subvolumesDirID] 11 25 + [(] 26 26 + [id] 27 28 + [)] 29 29 +L657 + [st] 2 3 + [,] 4 4 + [err] 6 8 + [:=] 10 11 + [os] 13 14 + [.] 15 15 + [Stat] 16 19 + [(] 20 20 + [dir] 21 23 + [)] 24 24 +L658 + [if] 2 3 + [err] 5 7 + [!=] 9 10 + [nil] 12 14 + [{] 16 16 +L659 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [err] 15 17 +L660 + [}] 2 2 +L662 + [if] 2 3 + [!] 5 5 + [st] 6 7 + [.] 8 8 + [IsDir] 9 13 + [(] 14 14 + [)] 15 15 + [{] 17 17 +L663 + [return] 3 8 + [nil] 10 12 + [,] 13 13 + [fmt] 15 17 + [.] 18 18 + [Errorf] 19 24 + [(] 25 25 + ["%s: not a directory"] 26 46 + [,] 47 47 + [dir] 49 51 + [)] 52 52 +L664 + [}] 2 2 +L666 + [if] 2 3 + [quota] 5 9 + [,] 10 10 + [err] 12 14 + [:=] 16 17 + [ioutil] 19 24 + [.] 25 25 + [ReadFile] 26 33 + [(] 34 34 + [d] 35 35 + [.] 36 36 + [quotasDirID] 37 47 + [(] 48 48 + [id] 49 50 + [)] 51 51 + [)] 52 52 + [;] 53 53 + [err] 55 57 + [==] 59 60 + [nil] 62 64 + [{] 66 66 +L667 + [if] 3 4 + [size] 6 9 + [,] 10 10 + [err] 12 14 + [:=] 16 17 + [strconv] 19 25 + [.] 26 26 + [ParseUint] 27 35 + [(] 36 36 + [string] 37 42 + [(] 43 43 + [quota] 44 48 + [)] 49 49 + [,] 50 50 + [10] 52 53 + [,] 54 54 + [64] 56 57 + [)] 58 58 + [;] 59 59 + [err] 61 63 + [==] 65 66 + [nil] 68 70 + [&&] 72 73 + [size] 75 78 + [>=] 80 81 + [d] 83 83 + [.] 84 84 + [options] 85 91 + [.] 92 92 + [minSpace] 93 100 + [{] 102 102 +L668 + [if] 4 5 + [err] 7 9 + [:=] 11 12 + [d] 14 14 + [.] 15 15 + [subvolEnableQuota] 16 32 + [(] 33 33 + [)] 34 34 + [;] 35 35 + [err] 37 39 + [!=] 41 42 + [nil] 44 46 + [{] 48 48 +L669 + [return] 5 10 + [nil] 12 14 + [,] 15 15 + [err] 17 19 +L670 + [}] 4 4 +L671 + [if] 4 5 + [err] 7 9 + [:=] 11 12 + [subvolLimitQgroup] 14 30 + [(] 31 31 + [dir] 32 34 + [,] 35 35 + [size] 37 40 + [)] 41 41 + [;] 42 42 + [err] 44 46 + [!=] 48 49 + [nil] 51 53 + [{] 55 55 +L672 + [return] 5 10 + [nil] 12 14 + [,] 15 15 + [err] 17 19 +L673 + [}] 4 4 +L674 + [}] 3 3 +L675 + [}] 2 2 +L677 + [return] 2 7 + [containerfs] 9 19 + [.] 20 20 + [NewLocalContainerFS] 21 39 + [(] 40 40 + [dir] 41 43 + [)] 44 44 + [,] 45 45 + [nil] 47 49 +L678 + [}] 1 1 +L681 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Put] 18 20 + [(] 21 21 + [id] 22 23 + [string] 25 30 + [)] 31 31 + [error] 33 37 + [{] 39 39 +L684 + [return] 2 7 + [nil] 9 11 +L685 + [}] 1 1 +L688 + [func] 1 4 + [(] 6 6 + [d] 7 7 + [*] 9 9 + [Driver] 10 15 + [)] 16 16 + [Exists] 18 23 + [(] 24 24 + [id] 25 26 + [string] 28 33 + [)] 34 34 + [bool] 36 39 + [{] 41 41 +L689 + [dir] 2 4 + [:=] 6 7 + [d] 9 9 + [.] 10 10 + [subvolumesDirID] 11 25 + [(] 26 26 + [id] 27 28 + [)] 29 29 +L690 + [_] 2 2 + [,] 3 3 + [err] 5 7 + [:=] 9 10 + [os] 12 13 + [.] 14 14 + [Stat] 15 18 + [(] 19 19 + [dir] 20 22 + [)] 23 23 +L691 + [return] 2 7 + [err] 9 11 + [==] 13 14 + [nil] 16 18 +L692 + [}] 1 1 +EOF diff --git a/pmd-go/src/test/resources/net/sourceforge/pmd/cpd/hello.go b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/hello.go similarity index 100% rename from pmd-go/src/test/resources/net/sourceforge/pmd/cpd/hello.go rename to pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/hello.go diff --git a/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/hello.txt b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/hello.txt new file mode 100644 index 0000000000..732aa6f1fc --- /dev/null +++ b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/hello.txt @@ -0,0 +1,31 @@ + [Image] or [Truncated image[ Bcol Ecol +L21 + [import] 1 6 + [(] 8 8 +L22 + ["fmt"] 2 6 +L24 + ["github.com/golang/example/stringu[ 2 39 +L25 + [)] 1 1 +L27 + [func] 1 4 + [main] 6 9 + [(] 10 10 + [)] 11 11 + [{] 13 13 +L28 + [fmt] 2 4 + [.] 5 5 + [Println] 6 12 + [(] 13 13 + [stringutil] 14 23 + [.] 24 24 + [Reverse] 25 31 + [(] 32 32 + ["!selpmaxe oG ,olleH"] 33 53 + [)] 54 54 + [)] 55 55 +L29 + [}] 1 1 +EOF diff --git a/pmd-go/src/test/resources/net/sourceforge/pmd/cpd/issue1751.go b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/issue-1751.go similarity index 100% rename from pmd-go/src/test/resources/net/sourceforge/pmd/cpd/issue1751.go rename to pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/issue-1751.go diff --git a/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/issue-1751.txt b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/issue-1751.txt new file mode 100644 index 0000000000..6f2a737b88 --- /dev/null +++ b/pmd-go/src/test/resources/net/sourceforge/pmd/lang/go/cpd/testdata/issue-1751.txt @@ -0,0 +1,84 @@ + [Image] or [Truncated image[ Bcol Ecol +L1 + [func] 1 4 + [test] 6 9 + [(] 10 10 + [in] 11 12 + [*] 14 14 + [Value] 15 19 + [,] 20 20 + [param] 22 26 + [*] 28 28 + [Value] 29 33 + [)] 34 34 + [(] 36 36 + [*] 37 37 + [Value] 38 42 + [,] 43 43 + [*] 45 45 + [Error] 46 50 + [)] 51 51 + [{] 53 53 +L2 + [output] 2 7 + [:=] 9 10 + [strings] 12 18 + [.] 19 19 + [Replace] 20 26 + [(] 27 27 + [in] 28 29 + [.] 30 30 + [String] 31 36 + [(] 37 37 + [)] 38 38 + [,] 39 39 + ["\\\\"] 41 44 + [,] 45 45 + ["\\\\\\\\"] 47 52 + [,] 53 53 + [-] 55 55 + [1] 56 56 + [)] 57 57 +L3 + [output] 2 7 + [=] 9 9 + [strings] 11 17 + [.] 18 18 + [Replace] 19 25 + [(] 26 26 + [output] 27 32 + [,] 33 33 + ["\\""] 35 38 + [,] 39 39 + ["\\\\\\""] 41 46 + [,] 47 47 + [-] 49 49 + [1] 50 50 + [)] 51 51 +L4 + [output] 2 7 + [=] 9 9 + [strings] 11 17 + [.] 18 18 + [Replace] 19 25 + [(] 26 26 + [output] 27 32 + [,] 33 33 + ["'"] 35 37 + [,] 38 38 + ["\\\\'"] 40 44 + [,] 45 45 + [-] 47 47 + [1] 48 48 + [)] 49 49 +L5 + [return] 2 7 + [AsValue] 9 15 + [(] 16 16 + [output] 17 22 + [)] 23 23 + [,] 24 24 + [nil] 26 28 +L6 + [}] 1 1 +EOF diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/cpd/JavaTokenizerTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/cpd/JavaTokenizerTest.java index c959bab10d..d691fe13e4 100644 --- a/pmd-java/src/test/java/net/sourceforge/pmd/cpd/JavaTokenizerTest.java +++ b/pmd-java/src/test/java/net/sourceforge/pmd/cpd/JavaTokenizerTest.java @@ -8,7 +8,6 @@ import static org.junit.Assert.assertEquals; import java.util.Properties; -import org.jetbrains.annotations.NotNull; import org.junit.Test; import net.sourceforge.pmd.cpd.test.CpdTextComparisonTest; @@ -20,7 +19,7 @@ public class JavaTokenizerTest extends CpdTextComparisonTest { } @Override - public Tokenizer newTokenizer(@NotNull Properties properties) { + public Tokenizer newTokenizer(Properties properties) { JavaTokenizer javaTokenizer = new JavaTokenizer(); javaTokenizer.setProperties(properties); return javaTokenizer; @@ -112,7 +111,6 @@ public class JavaTokenizerTest extends CpdTextComparisonTest { } - @NotNull @Override public Properties defaultProperties() { return properties(false, false, false);