Q&A

댓글 6

  • 2020.12.19 14:27 #1494015

    제보 감사합니다. 광속패치 출동합니다.

    https://github.com/rhymix/rhymix/commit/2c48e34

  • 2020.12.19 14:30 #1494019

    위젯 부분에도 발생하여 보고드립니당

     

    function recompileWidget($content)
    {
    // Language in bringing
    $lang_list = Context::get('lang_supported');
    // Bringing widget cache sequence
    preg_match_all('!<img([^\>]*)widget=([^\>]*?)\>!is', $content, $matches);

    $oXmlParser = new XeXmlParser();

    $cnt = count($matches[1]);
    for($i=0;$i<$cnt;$i++)
    {
    $buff = $matches[0][$i];
    $xml_doc = $oXmlParser->parse(trim($buff));

    $args = $xml_doc->img->attrs;
    if(!$args) continue;
    // If you are not caching path
    $widget = $args->widget;
    $sequence = $args->widget_sequence;
    $cache = $args->widget_cache;
    if(!$cache) continue;
    if(!$sequence)
    {
    $sequence = sha1(json_encode($args));
    }

    if(countobj($args))
    {
    foreach($args as $k => $v) $args->{$k} = urldecode($v);
    }

    foreach($lang_list as $lang_type => $val)
    {
    $this->getCache($widget, $args, $lang_type, true, $sequence);
    }
    }
    }

     

     

    if(countobj($args))
    {
    foreach($args as $k => $v) $args->{$k} = urldecode($v);
    }

    이 부분이 count로 되어있어 오류가 발생하였고, countobj로 바꾸니까 해결되었습니다 

  • 2020.12.19 14:37 #1494027
    이 경우에는 count를 사용한 조건이 아예 필요없을 것 같네요. 위에서 if(!$args) continue; 를 해주고 있기 때문에 $args에 뭔가가 들어 있지 않으면 문제의 줄까지 내려올 수조차 없습니다.

    패치: https://github.com/rhymix/rhymix/commit/2f99d71
  • 2020.12.19 14:44 #1494035
    감사합니다! 개발은 할 줄 모르지만 사용을 하면서 나타나는 버그들을 바로바로 보고드려서 라이믹스에 기여하겠습니다
  • 2020.12.19 14:45 #1494043
    PHP 8.0 베타테스터 노릇을 계속 하실 생각이라면 아예 하루쯤 목록을 쫙 만들어서 한꺼번에 전달해 주시면 더 좋을 것 같습니다. 에러나는 곳이 한두 군데가 아닐 테니까요.
  • 2020.12.19 14:50 #1494062
    아아 그게 기진곰님과 라이믹스 개발진분들도 조금 덜 번거로우실것 같네요

    그렇게 전달드리겠습니다~