问题标签 [false-positive]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - CDATA 的 PHP stristr 误报
以下 HTML/CSS 来自 Hotmail 发送的 HTML 电子邮件...
我只是想从内部样式元素中获取 CSS。有些可能包含 HTML 注释,例如上面的注释或 CDATA。出于某种奇怪的原因,PHP 为上面的字符串返回了下面的 CDATA 的误报...
c - Valgrind 标记故意泄漏
我觉得这必须是一个功能,但我的 Google-Fu 让我失望了。如果之前有人问过/回答过这个问题,我提前道歉,感觉很明显,但我找不到任何东西。
有没有办法将分配标记为故意泄漏?上下文是在程序初始化期间动态分配一次并在整个程序生命周期中使用的数据结构。没有真正的理由在程序终止之前释放所有分配的对象(为什么要清理房间,因为整个房子都有一个破坏球?),但它会导致 valgrind 的很多误报。
我知道我可以创建一个抑制文件,但感觉是手动的和断开的。我更喜欢某种宏或其他源内注释,这种分配是故意永远不会释放的(例如类似于malloc(...)
->的东西malloc_IGNORE_LEAK(...)
)。valgrind 是否以某种方式支持这一点?
如果不是,那么标记/跟踪故意“泄漏”的首选解决方案是什么?
javascript - 隐藏的选择器总是决定一个元素是可见的,即使它不可见
我正在为即将到来的项目做的事情之一是标注/工具提示系统。理论上,这是一件简单的小事。你采取一些这样的标记:
...并将其绑定在 JavaScript 中,以便每当您单击某个链接时,它都会切换可见性。
问题是,虽然标注最初是从视图中隐藏的,并且在单击时出现,但尝试关闭标注会失败。当我在 Chrome 调试器中添加断点和监视值时$callout.is(':hidden')
,即使元素可见,监视值也会计算为true
。
根据:hidden 选择器的 jQuery 条目,似乎在任何给定时间都在检查许多属性,这让我想到了一个问题:在我的设置中是什么在设法欺骗 jQuery 的:hidden
选择器使其始终相信标注被隐藏,即使不再如此?
编辑:由于我在侧面板中注意到我最近的一个问题,因此我的团队已确保我们的应用程序在 IE9 标准模式下运行,因此环境不应该成为问题。
编辑2:有问题的代码的小提琴(更新!问题完全再现。)
c++ - clang++ 3.3 静态分析器,如何摆脱误报?
我一直在我clang 3.3
的各种项目上运行静态分析器。除了一些是我自己的错的问题(这是意料之中的,否则我会非常伤心和自鸣得意),除了以下关于std::function
'移动构造函数的问题是误报之外,一切都进行得很顺利。
在进一步讨论之前,这里有一个简单的测试用例:
运行它clang++ -std=c++11 --analyze -Xanalyzer -analyzer-output=text foo.cpp
(它使用 GCC 的libstdc++
- 即 4.8.1 版本 - 而不是clang
's libc++
),你会得到以下跟踪:
如您所见,移动构造函数std::function(std::function&&)
是根据swap
. 整个操作的步骤是(如果我们相信的话clang
):
f1
构造正确f2
尚未构建,因此包含垃圾f1
搬进去了f2
,但实际上它真的是swap
f2
now 包含 oldf1
,但f1
包含 oldf2
ie。垃圾- 在某些时候,
f1
包含垃圾被破坏......然后会发生什么?
理论说,这是非常糟糕的。在实践中,从实现来看,似乎std::function
私有继承_Function_base
会注意将所有重要的东西(即_M_manager
)初始化为 null,因此clang
关于 的警告_M_invoker
是毫无意义的。
万一有人怀疑,移动一个对象应该让它处于不确定的状态,你只能分配给它或破坏它。GCC 的function
实现正是这样做的:仅_M_manager
在涉及资源管理方面很重要,其余的(包括_M_invoker
)只是“方便”指针。
我在 GCC 的实施中挖得足够远,对' 诊断的误报function
状态完全没有疑问。但是由于我的代码中有数百个地方发生了这种情况,因此至少可以说,通过静态分析器的结果非常痛苦。clang
我如何指示clang
不要报告这个问题?
同样,如果您错过了它,我将clang 3.3
与 GCC 一起使用libstdc++ 4.8.1
。
注意:如果您正在运行clang 3.4
构建并且它没有触发此误报,请告诉我。据我尝试,我还无法在我的系统上运行 3.4(Debian Jessie),但如果它解决了这个问题,我会更加努力。
obfuscation - 防病毒软件检测到混淆程序集(误报)
我用Confuser混淆了一个 dotnet winform 应用程序,然后用RPX Packer 打包,现在生成的程序集被 Kaspersky(删除它)、Avast 等防病毒软件误报(Windows Defender 可以接受)。我无法弄清楚为什么?
我该如何解决这个问题
batch-file - 我怎样才能将它压缩成 EXE 而不被视为病毒?它是我游戏的更新程序:/
我有一个批处理应用程序,我将其压缩成一个 exe,不幸的是,所有病毒软件都将其检测为病毒,因为它在应用程序中嵌入了 wget 和 7zip。有谁知道如何解决这个问题?
java - MySQL备份文件被归类为垃圾邮件
伙计们在我的java应用程序中有一个选项备份和邮件..这里sql db使用mysqldump获取备份..当它创建备份文件时..然后我通过java发送它..我使用JFileChooser并浏览备份文件并邮寄它.. 但我的问题是当我发送邮件时它进入垃圾邮件文件夹而不是收件箱.. 我们认为我的文件名是 backup.sql.. 我认为文件格式不熟悉这就是它进入垃圾邮件的原因。 .是否有任何解决方案,例如 zip 和发送..但我希望通过 java 解决方案。
rspec - 如果规范没有应该/期望等,我如何使 Rspec 自动失败
我在我们的大型代码库中发现了许多规范(有些甚至是我的 :),它们忘记包含.should
并在没有测试任何东西时通过了。
例如
无论 的内容如何,该规范都将通过,response.body
因为没有使用 RSpec 匹配器。
我的问题是:是否有 RSpec 选项或 gem 或其他东西可以检测规范何时完成而无需使用任何 RSpec 匹配器,也无需调用pending
并引发错误或将规范标记为失败或其他状态以提醒开发人员注意这一事实规范没有做他们可能认为的那样?
一个后续问题是:这不应该是 RSpec 的默认行为吗?是否存在您希望能够编写不使用匹配器且不调用的规范的用例pending
?
FWIW:我知道 RSpec 有一个--warnings
选项,它可能会或可能不会打印有关此类场景的警告。在实践中,尽管对于我们的主要项目,它会打印数千行不相关的警告,其中许多是关于第三方 gem 等的。
php - 在 PHPSESSID cookie 中检测链式 SQL 注入尝试 1/2"
我们在应用服务器上安装了 ModSecurity,有时请求被阻止,因为 ModSecurity 检测到 PHPSESSID cookie 上的 SQL 注入。
GET /somepage.php HTTP/1.1
主机:www.domain.com
用户代理:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:26.0) Gecko/20100101 Firefox/26.0
接受:text/html,application/xhtml +xml,application/xml;q=0.9, / ;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Cookie: PHPSESSID=peu4e3ftt 241or q5nbnuc6ocs4
Connection: keep-alive消息:使用代码 403(第 2 阶段)拒绝访问。[file "C:/Program Files/Apache Software Foundation/Apache2.2/conf/extra/modsecurity_crs/base_rules/modsecurity_crs_41_sql_injection_attacks.conf"] [line "539"] [id "981248"] [msg "检测链接的 SQL 注入尝试1/2"] [数据“ 241 或”] [严重性“CRITICAL”] [标记“WEB_ATTACK/SQLI”] [标记“WEB_ATTACK/ID”]
有什么建议可以避免这种误报?
google-chrome - 谷歌浏览器:文件是恶意的
但它是一个谎言
我的安装程序遇到了这个问题:从 Chrome 中的网站下载的安装程序 exe 被标记为恶意软件。
为了克服这个问题,到目前为止我们已经尝试过更改域名,但这不是一个永久的解决方案。
即使在使用 Thawte 证书签署我的 exe 后,标志仍然存在。
我用所有流行的 AV 扫描了我的 exe,其中没有任何恶意。
我怎样才能摆脱这个镀铬标志?