Coder Social home page Coder Social logo

Comments (3)

bjornpost avatar bjornpost commented on July 20, 2024

Ok, I think I've got this one figured out, but as I can't run the test suite (it's quite complex to set up..), I'm hestitant to file a PR directly. @tedivm , can you check out this patch and confirm it doesn't break anything?

index f61eddf..dd20be9 100644
--- a/src/Fetch/Message.php
+++ b/src/Fetch/Message.php
@@ -432,12 +432,13 @@ class Message
             $attachment          = new Attachment($this, $structure, $partIdentifier);
             $this->attachments[] = $attachment;
         } elseif ($structure->type == 0 || $structure->type == 1) {
-
-            $messageBody = isset($partIdentifier) ?
-                imap_fetchbody($this->imapStream, $this->uid, $partIdentifier, FT_UID)
-                : imap_body($this->imapStream, $this->uid, FT_UID);
-
-            $messageBody = self::decode($messageBody, $structure->encoding);
+            if(isset($partIdentifier)) {
+                $section = is_int($structure->ifsubtype) ? (string)$partIdentifier.".".$structure->ifsubtype : $partIdentifier;
+                // $section = $partIdentifier;
+                $messageBody = imap_fetchbody($this->imapStream, $this->uid, $section, FT_UID);
+            } else {
+                $messageBody = imap_body($this->imapStream, $this->uid, FT_UID);
+            }

             if (!empty($parameters['charset']) && $parameters['charset'] !== self::$charset)
                 $messageBody = iconv($parameters['charset'], self::$charset, $messageBody);

from fetch.

tedivm avatar tedivm commented on July 20, 2024

I'm going to be working on some fixes to the test suite to make it easier to run- in the meantime a PR would be ideal, and we can work off of that.

from fetch.

bjornpost avatar bjornpost commented on July 20, 2024

I'm closing this one in favor of #40.

from fetch.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.