Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

스킨 파싱시 필요없는 함수 호출로 인한 로드 발생 #919

Closed
textcube-dev opened this issue Sep 24, 2012 · 0 comments
Closed
Assignees
Milestone

Comments

@textcube-dev
Copy link
Contributor

개요

  • 예를 들어봅니다.
  • dress함수를 봅시다. 해당 치환자와 그 치환자 위치에 쓰여질 값을 인수로 줍니다. dress는 스킨을 검사해서 치환자가 존재하면 쓰여질 값으로 대체합니다. 그러면 dress 가 실행되는 시점에서 치환자 자리에 쓰여질 값을 넘기는데, 그 자리에 보통 해당 부분을 출력하는 함수가 통째로 들어가 있습니다.
  • 그런데 스킨에 해당 치환자가 없으면? 쓸데없이 함수를 통째로 실행해서 리턴값을 받은겁니다. 또는 스킨에는 치환자가 있는데 사이드바 영역이고 현재 사용하지 않느다면? 마찬가지로 dress로 값을 넘겨주기 위해서 함수의 결과값을 받아야 합니다.
  • 문제가 되는 경우가 많은데, 좀 크리티컬한 예를 하나 들어 보겠습니다. 블로그에서 태그 출력을 쓰든 안쓰든, 태그 관련한 치환자는 dress로 처리합니다. 그런데 환경 설정에서 태그 출력을 랜덤으로 설정한 경우 실제로 랜덤 태그 목록을 보여주지 않더라도 그 함수는 무조건 실행됩니다. (로드가 꽤나 되는데도 말이지요)
  • 어젯밤에 서울 올라오는 버스속에서 다른 글 쓰다가 생각난 부분입니다.
  • 이슈 등록시간: 2008-04-08T18:01:55
  • 마지막 수정시간: 2009-10-08T13:23:11
Comment 1 by inureyes at 2008-04-08T18:03:16
해결하려면 구조를 좀 뜯든지, dress를 호출하기 이전에 wrapper를 하나 씌워야 합니다. 어떤 쪽도 대규모 공사가 필요합니다. 쉽게 가는 아이디어가 안 떠오르는 상황~
Comment 2 by inureyes at 2008-05-27T23:22:38
Changeset: f0e9733

#919

  • 스킨 파서 시스템 수정
  • 모든 치환자의 목록을 가지고 있습니다.
  • dress시 스킨 자체를 스캐닝하지 않고, 치환자의 목록을 참조하여 있으면 바꾸기를 시도합니다.
  • 문제점
  • dress할 때 들어오는 컨텐츠가 block으로, 스킨의 일부인 경우에는 해당 치환자가 존재하지 않을 수도 있는데 치환을 시도합니다. (블럭별로 치환자를 기록하게 하는게 더 낭비일 것 같기도 합니다.
Comment 3 by inureyes at 2008-05-27T23:33:36
Changeset: 82b5885

#919

  • f0e9733
    에서 표지가 출력되지 않는 문제점을 수정합니다.
Comment 4 by inureyes at 2008-05-28T17:04:52
Changeset: adeeeb2

#919

  • '옛날' 스킨들이 호환되지 않는 문제 때문에 일단 dress 부분의 레지스트리-_- 기능은 끕니다.
Comment 5 by inureyes at 2008-05-28T17:05:42
Changeset: 473e26e

#919

  • adeeeb2
    의 디버그 루틴 제거
Comment 6 by inureyes at 2008-05-29T13:46:53
Changeset: 9451318

#897, #919

  • CSS 수정시 빠진 부분 보충
  • 관리 패널 일부에서 페이징이 되지 않는 문제 수정
Comment 7 by inureyes at 2008-05-29T22:04:38
Changeset: 548408c

#919

  • 플러그인에서 캐시 사용 기본값을 false로 하도록 컴포넌트 조정
Comment 8 by inureyes at 2008-05-30T12:34:50
Changeset: 70718db

#919

  • dress 함수에서 실제 존재하지 않는 치환자일 경우 false를 리턴하는 부분을 복원
  • 없는 경우 끼워넣기 루틴들이 정상동작 하지 않게 된다.
  • Bug reported by lunamoth
Comment 9 by inureyes at 2008-05-30T20:51:06
Changeset: 6fdf4e2

#919

  • 스킨 파서 시스템의 새 버전이 안정적으로 돌아갈 때 까지의 임시조치
  • 스킨에 치환자가 없는 경우 또는 사용하지 않는 경우에는 해당 관련 함수들을 아예 계산하지 않습니다.
@ghost ghost assigned inureyes Sep 24, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants