1
0
mirror of https://github.com/esphome/esphome.git synced 2025-10-01 01:22:20 +01:00

[online_image] Bugfix: Use std::string instead of const char * (#7556)

This commit is contained in:
Clyde Stubbs
2024-10-08 03:47:07 +11:00
committed by GitHub
parent 1d91601094
commit b8630363e0
4 changed files with 12 additions and 5 deletions

View File

@@ -125,7 +125,7 @@ async def online_image_action_to_code(config, action_id, template_arg, args):
var = cg.new_Pvariable(action_id, template_arg, paren)
if CONF_URL in config:
template_ = await cg.templatable(config[CONF_URL], args, cg.const_char_ptr)
template_ = await cg.templatable(config[CONF_URL], args, cg.std_string)
cg.add(var.set_url(template_))
return var

View File

@@ -157,7 +157,7 @@ class OnlineImage : public PollingComponent,
template<typename... Ts> class OnlineImageSetUrlAction : public Action<Ts...> {
public:
OnlineImageSetUrlAction(OnlineImage *parent) : parent_(parent) {}
TEMPLATABLE_VALUE(const char *, url)
TEMPLATABLE_VALUE(std::string, url)
void play(Ts... x) override {
this->parent_->set_url(this->url_.value(x...));
this->parent_->update();
@@ -170,7 +170,6 @@ template<typename... Ts> class OnlineImageSetUrlAction : public Action<Ts...> {
template<typename... Ts> class OnlineImageReleaseAction : public Action<Ts...> {
public:
OnlineImageReleaseAction(OnlineImage *parent) : parent_(parent) {}
TEMPLATABLE_VALUE(const char *, url)
void play(Ts... x) override { this->parent_->release(); }
protected: