fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

fix: imagecreatefrompng() gd-png: libpng warning - #7570

Merged
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img
Jun 17, 2023
Merged

fix: imagecreatefrompng() gd-png: libpng warning#7570
kenjis merged 1 commit into
codeigniter4:developfrom
ping-yee:230613_img

Conversation

@ping-yee

@ping-yeeping-yee commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

Description
Fixes#7567.
It seems this is a bug of php.

Ref:

  1. https://stackoverflow.com/questions/70569197/imagecreatefrompng-gd-png-libpng-warning-interlace-handling-should-be-turne
  2. imagecreatefrompng() libpng warnings dompdf/dompdf#2718

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@ping-yeeping-yee changed the title fix: fix the image handler.fix: fix the imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: fix the imagecreatefrompng() error.fix: imagecreatefrompng() error.Jun 13, 2023
@kenjiskenjis changed the title fix: imagecreatefrompng() error.fix: imagecreatefrompng() gd-png: libpng warningJun 13, 2023
@kenjiskenjis added the bug Verified issues on the current code behavior or pull requests that will fix them label Jun 13, 2023
@kenjis

Copy link
Copy Markdown
Member

Cannot reproduce the error. Can you give an sample image file?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I use the any else field image file of the issue.

But I can reproduce the problem at PHP8.1 in few days ago. I'll try it again later.

@ping-yee

ping-yee commented Jun 15, 2023

Copy link
Copy Markdown
ContributorAuthor
image

@kenjis I still the error in the latest develop branch as the above image shows with the origin issue reproduce step.

@kenjis

Copy link
Copy Markdown
Member

@ping-yee Thank you for reproducing.

@michalsn

Copy link
Copy Markdown
Member

Before we just suppress the error reporting for this, can we try to figure out the real cause? It seems like this is related to libPNG version we're using.

@ping-yee Can you tell me what libpng version are you using?

libpng-config --version

If it's not the latest one, maybe upgrading would solve the issue?

@kenjis

Copy link
Copy Markdown
Member

@michalsn Even If it is a bug in libpng, devs may not be able to upgrade it when using a shared hosting or so.

@michalsn

Copy link
Copy Markdown
Member

@kenjis This is true, but I would like to check if this is a permanent problem or if it has been fixed.

Feedback with at least the libpng version in use would be appreciated. Because, as we can see, not every environment is affected and this error seems to be returned only under "specific conditions".

@kenjis

Copy link
Copy Markdown
Member

@michalsn Okay, I got your intention. Let's wait for feedback.

@michalsn

Copy link
Copy Markdown
Member

@kenjis Whether I receive feedback or not, it will not change the essence of the problem, so feel free to merge.

@ping-yee

Copy link
Copy Markdown
ContributorAuthor

Can you tell me what libpng version are you using?

I can't answer this immediately because I'm on vacation in Japan and don't have the computer.

But I actually command composer update before I reproduce that problem.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee No worries, enjoy your vacation.

Although composer update has nothing to do with it, since libpng is a library installed in your system.

@kenjiskenjis added the waiting for info Issues or pull requests that need further clarification from the author label Jun 17, 2023
@kenjis
kenjis merged commit 557b0ed into codeigniter4:developJun 17, 2023
@ping-yee
ping-yee deleted the 230613_img branch June 19, 2023 13:39
@ping-yee

Copy link
Copy Markdown
ContributorAuthor

I may find out the problem, I use the webdevops/php-nginx-dev:8.1 docker image to build the codeigniter4 dev environment before.
https://dockerfile.readthedocs.io/en/latest/content/DockerImages/dockerfiles/php-nginx-dev.html

And I just enter it's env and get the result as below after command libpng-config --version.

root@3c0338463c16:/app# libpng-config --version
bash: libpng-config: command not found

Seems this image have some problem, but this PR change can actually fix that problem in this environment.

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Can you run php_info() and see if the libPNG version is listed in the GD section?

@ping-yee

Copy link
Copy Markdown
ContributorAuthor
image

@michalsn like this?

@michalsn

Copy link
Copy Markdown
Member

@ping-yee Yes, thanks. It looks like you don't have the latest version, which is 1.6.39. IMO this might be the issue. But as Kenjis mentioned, the current approach is probably a good choice.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugVerified issues on the current code behavior or pull requests that will fix themwaiting for infoIssues or pull requests that need further clarification from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

imagecreatefrompng(): gd-png: libpng warning

4 participants

@ping-yee@kenjis@michalsn@samsonasik