【问题标题】:Android 11,crash in skia/src/ops/GrorvalOpFactory.cpp, Help me see whyAndroid 11,在skia/src/ops/GrorvalOpFactory.cpp 崩溃,帮我看看为什么
【发布时间】:2021-05-26 08:43:19
【问题描述】:

https://github.com/google/skia/blob/master/src/gpu/ops/GrOvalOpFactory.cpp

这个函数中的错误

this->setVertexAttributes(&fInPosition, 7);

跟踪定位后,问题是fInPosition的next指针位置不是合法的Attribute,也就是说

     Attribute fInPosition;
     Attribute fInColor;
     Attribute fInCircleEdge;
     // Optional attributes.
     Attribute fInClipPlane;
     Attribute fInIsectPlane;
     Attribute fInUnionPlane;
     Attribute fInRoundCapCenters;

这些属性没有分配给连续的内存。

但是我在上面的代码中加了一行日志打印,crash就消失了。检查汇编代码后,发现打印日志会改变编译方式。我想问一下Android 11编译带来了什么变化

【问题讨论】:

    标签: android skia


    【解决方案1】:

    这个问题解决了。由于PGO将函数的输入参数的数据复制到其他寄存器不正确,导致内存未连接。

    【讨论】:

      猜你喜欢
      • 2021-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多