[
https://issues.apache.org/jira/browse/ZOOKEEPER-2628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15646023#comment-15646023
]
ASF GitHub Bot commented on ZOOKEEPER-2628:
-------------------------------------------
Github user breed commented on a diff in the pull request:
https://github.com/apache/zookeeper/pull/102#discussion_r86902396
--- Diff: src/java/main/org/apache/jute/compiler/CGenerator.java ---
@@ -61,70 +61,88 @@ void genCode() throws IOException {
+ outputDirectory);
}
}
- FileWriter c = new FileWriter(new File(outputDirectory,
mName+".c"));
- FileWriter h = new FileWriter(new File(outputDirectory,
mName+".h"));
- h.write("/**\n");
- h.write("* Licensed to the Apache Software Foundation (ASF) under
one\n");
- h.write("* or more contributor license agreements. See the NOTICE
file\n");
- h.write("* distributed with this work for additional
information\n");
- h.write("* regarding copyright ownership. The ASF licenses this
file\n");
- h.write("* to you under the Apache License, Version 2.0 (the\n");
- h.write("* \"License\"); you may not use this file except in
compliance\n");
- h.write("* with the License. You may obtain a copy of the License
at\n");
- h.write("*\n");
- h.write("* http://www.apache.org/licenses/LICENSE-2.0\n");
- h.write("*\n");
- h.write("* Unless required by applicable law or agreed to in
writing, software\n");
- h.write("* distributed under the License is distributed on an \"AS
IS\" BASIS,\n");
- h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.\n");
- h.write("* See the License for the specific language governing
permissions and\n");
- h.write("* limitations under the License.\n");
- h.write("*/\n");
- h.write("\n");
+ FileWriter c = null, h = null;
+ try {
+ c = new FileWriter(new File(outputDirectory, mName + ".c"));
+ h = new FileWriter(new File(outputDirectory, mName + ".h"));
- c.write("/**\n");
- c.write("* Licensed to the Apache Software Foundation (ASF) under
one\n");
- c.write("* or more contributor license agreements. See the NOTICE
file\n");
- c.write("* distributed with this work for additional
information\n");
- c.write("* regarding copyright ownership. The ASF licenses this
file\n");
- c.write("* to you under the Apache License, Version 2.0 (the\n");
- c.write("* \"License\"); you may not use this file except in
compliance\n");
- c.write("* with the License. You may obtain a copy of the License
at\n");
- c.write("*\n");
- c.write("* http://www.apache.org/licenses/LICENSE-2.0\n");
- c.write("*\n");
- c.write("* Unless required by applicable law or agreed to in
writing, software\n");
- c.write("* distributed under the License is distributed on an \"AS
IS\" BASIS,\n");
- c.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.\n");
- c.write("* See the License for the specific language governing
permissions and\n");
- c.write("* limitations under the License.\n");
- c.write("*/\n");
- c.write("\n");
+ h.write("/**\n");
+ h.write("* Licensed to the Apache Software Foundation (ASF)
under one\n");
+ h.write("* or more contributor license agreements. See the
NOTICE file\n");
+ h.write("* distributed with this work for additional
information\n");
+ h.write("* regarding copyright ownership. The ASF licenses
this file\n");
+ h.write("* to you under the Apache License, Version 2.0
(the\n");
+ h.write("* \"License\"); you may not use this file except in
compliance\n");
+ h.write("* with the License. You may obtain a copy of the
License at\n");
+ h.write("*\n");
+ h.write("* http://www.apache.org/licenses/LICENSE-2.0\n");
+ h.write("*\n");
+ h.write("* Unless required by applicable law or agreed to in
writing, software\n");
+ h.write("* distributed under the License is distributed on an
\"AS IS\" BASIS,\n");
+ h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express or implied.\n");
+ h.write("* See the License for the specific language governing
permissions and\n");
+ h.write("* limitations under the License.\n");
+ h.write("*/\n");
+ h.write("\n");
- h.write("#ifndef __"+mName.toUpperCase().replace('.','_')+"__\n");
- h.write("#define __"+mName.toUpperCase().replace('.','_')+"__\n");
+ c.write("/**\n");
+ c.write("* Licensed to the Apache Software Foundation (ASF)
under one\n");
+ c.write("* or more contributor license agreements. See the
NOTICE file\n");
+ c.write("* distributed with this work for additional
information\n");
+ c.write("* regarding copyright ownership. The ASF licenses
this file\n");
+ c.write("* to you under the Apache License, Version 2.0
(the\n");
+ c.write("* \"License\"); you may not use this file except in
compliance\n");
+ c.write("* with the License. You may obtain a copy of the
License at\n");
+ c.write("*\n");
+ c.write("* http://www.apache.org/licenses/LICENSE-2.0\n");
+ c.write("*\n");
+ c.write("* Unless required by applicable law or agreed to in
writing, software\n");
+ c.write("* distributed under the License is distributed on an
\"AS IS\" BASIS,\n");
+ c.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express or implied.\n");
+ c.write("* See the License for the specific language governing
permissions and\n");
+ c.write("* limitations under the License.\n");
+ c.write("*/\n");
+ c.write("\n");
- h.write("#include \"recordio.h\"\n");
- for (Iterator<JFile> i = mInclFiles.iterator(); i.hasNext();) {
- JFile f = i.next();
- h.write("#include \""+f.getName()+".h\"\n");
- }
- // required for compilation from C++
- h.write("\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n");
+ h.write("#ifndef __" + mName.toUpperCase().replace('.', '_') +
"__\n");
+ h.write("#define __" + mName.toUpperCase().replace('.', '_') +
"__\n");
- c.write("#include <stdlib.h>\n"); // need it for calloc() & free()
- c.write("#include \""+mName+".h\"\n\n");
+ h.write("#include \"recordio.h\"\n");
+ for (Iterator<JFile> i = mInclFiles.iterator(); i.hasNext(); )
{
+ JFile f = i.next();
+ h.write("#include \"" + f.getName() + ".h\"\n");
+ }
+ // required for compilation from C++
+ h.write("\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n");
- for (Iterator<JRecord> i = mRecList.iterator(); i.hasNext();) {
- JRecord jr = i.next();
- jr.genCCode(h, c);
- }
+ c.write("#include <stdlib.h>\n"); // need it for calloc() &
free()
+ c.write("#include \"" + mName + ".h\"\n\n");
- h.write("\n#ifdef __cplusplus\n}\n#endif\n\n");
- h.write("#endif //"+mName.toUpperCase().replace('.','_')+"__\n");
+ for (Iterator<JRecord> i = mRecList.iterator(); i.hasNext(); )
{
+ JRecord jr = i.next();
+ jr.genCCode(h, c);
+ }
- h.close();
- c.close();
+ h.write("\n#ifdef __cplusplus\n}\n#endif\n\n");
+ h.write("#endif //" + mName.toUpperCase().replace('.', '_') +
"__\n");
+ } catch (IOException e) {
+ throw e;
+ } finally {
+ if (h != null) {
+ try {
+ h.close();
+ } catch (IOException ex) {
+ throw ex;
+ } finally {
+ if (c != null) {
+ c.close();
+ }
+ }
+ }
+ if (c != null) {
--- End diff --
i think try with resources would clean this up. we are on java7 now right?
> Investigate and fix findbug warnings
> ------------------------------------
>
> Key: ZOOKEEPER-2628
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2628
> Project: ZooKeeper
> Issue Type: Bug
> Affects Versions: 3.5.2
> Reporter: Michael Han
> Fix For: 3.5.3
>
>
> Findbug tool used by Jenkins bot is upgraded to 3.0.1 from 2.0.3 according to
> Infra team, and this leads to 20 new warnings produced by findbug. The
> warning reports can be found on [pre commit
> builds|https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/] with build
> number >= 3513. These warnings need to be triaged and fixed if they are
> legitimate.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)