View more
Texas, where he was found wandering as a stray with sore, injured feet. With patience, care, and plenty of love, his foster family helped him heal — and their 2‑year‑old quickly gave him the name “Puppers,” which fits him perfectly.
Now about 10 months old and 54 lbs, Charlie has blossomed into a playful, affectionate, happy-go-lucky pup. He loves to chase balls, romp around the yard, and then curl up for snuggles. His personality is gentle, eager to please, and full of joy.
Charlie currently lives with a whole barnyard crew — dogs, horses, a donkey, and even a barn cat — and he has been wonderfully respectful of every single one.
Charlie Puppers would thrive in a home that loves playtime, companionship, and a dog with a big heart. He’s ready for adventures, ready for love, and ready for a family to call his own.
If you’re looking for a loyal, fun, animal-friendly companion with a sweet backstory and an even sweeter personality, Charlie Puppers is your guy.
Charlie is neutered, microchipped and current on his vaccines. His adoption fee is $415. Apply to adopt CHARLIE PUPPERS LONESTAR at .ehrdogs
(function () { // Only on animal detail pages if (!/\/animals\/detail/i.test(location.pathname)) return; // Debounce to avoid double-fire (touchend + click, etc.) var lastNavAt = 0; function toFullSize(url) { try { var u = new URL(url, location.href); u.searchParams.delete("width"); u.searchParams.delete("height"); return u.toString(); } catch (e) { return url || ""; } } function looksLikeAnimalPhoto(url) { return /\/pictures\/animals\/\d+\/\d+\/[^?#]+\.(jpg|jpeg|png|gif)/i.test(url || ""); } function handler(e) { var el = e.target; if (!el) return; // Find the closest anchor or image in the click path var a = el.closest ? el.closest('a') : null; var img = el.closest ? el.closest('img') : null; var url = ""; // Prefer anchor href if it points to an animal photo if (a && a.getAttribute) { var href = a.getAttribute("href") || ""; if (href && (href.indexOf("/pictures/animals/") !== -1 || looksLikeAnimalPhoto(href))) { url = href; } } // Otherwise fall back to the image src if (!url && img && img.getAttribute) { var src = img.getAttribute("src") || ""; if (src && (src.indexOf("/pictures/animals/") !== -1 || looksLikeAnimalPhoto(src))) { url = src; } } if (!url) return; // Absolute URL + full-size version try { url = new URL(url, location.href).toString(); } catch (_) {} url = toFullSize(url); // Stop PrettyPhoto (and any other delegated click handlers) e.preventDefault(); e.stopPropagation(); if (e.stopImmediatePropagation) e.stopImmediatePropagation(); // Debounce var now = Date.now(); if (now - lastNavAt < 500) return; lastNavAt = now; // SAME TAB navigation to the full-size image location.href = url; } // Capture phase is the key: we get the event before PrettyPhoto. ["click", "pointerup", "touchend"].forEach(function (evt) { document.addEventListener(evt, handler, true); }); })();